web-dev-qa-db-ja.com

唯一の認証オプションとして「Bring your own Identity」は有効な方法ですか?

この質問は、主にOpenID Connectが完全に実現されている場合を対象としています。

ソーシャルネットワーキングサイトでのサインインへの嫌悪感を理解していますが、OIDCについて理解していることから、開発者はOIDCを一度実装するだけで、すべてのプロバイダーで動作するようになります。

これが発生し、人々が非ソーシャルネットワークでサインインするオプションを選択し、Symantecのようなオプションを確認して、次のことに気付く場合 'ああ、このIdentityの問題は、メールの連絡先や友達のリストを共有するだけではない地球全体で '、私は不信の多くが消えると信じています。

したがって、ソーシャルネットワークでoauthへの躊躇を無視して、質問に移ります:

認証、つまり認証を完全に外部委託する唯一の方法としてBYOIDは有効なセキュリティ対策ですか?

8
Andrew Hoffman

OIDCの実装に焦点を当てるのではなく、次のより一般的な質問に取り組みたいと思います。

認証、つまり認証を完全に外部委託する唯一の方法としてBYOIDは有効なセキュリティ対策ですか?

公開鍵は、外部認証の形式です。証明書の有効性のサードパーティによる検証を信頼し、結果としてリソースへのアクセスを許可します。その観点から、それは不合理に見えません。外部検証を「クラウドソーシングによる検証」(つまりソーシャルネットワーク)に結び付けることにより、その人が本人であることを期待している人であることをある程度確認できます。

実装にはいくつかの大きなハードルがあることは事実ですが、その概念は他の形式でも受け入れられています。

2
schroeder

はいこれは合理的なアプローチです。

これはゼロリスクアプローチではありません。ユーザーがまだOpenID Connectアカウントを持っていない場合、またはユーザーが概念を理解していない場合、サインアッププロセスはより困難になり、そのユーザーを失うリスクがあります。あなたは非標準的なことをしているので、あなたはサポート担当者を不平不満で苦しめる何人かの賢いアレックユーザーを得るでしょう。また、OpenID Connectプロトコルの欠陥など、将来的に何らかの妥協案がある場合は、このアプローチを追求したことのないサイトと比べると、馬鹿げているように見えるかもしれません。

しかし、全体として、これは良いことだと思います。ほとんどのユーザーはすでに主要な提供物の1つを持つアカウントを持っているので、私がGoogleアカウントを使用してスタック交換にログインするのと同じように、喜んでそれを使用します。少数のユーザーがマイナープロバイダーのアカウントを持っていますが、そのプロバイダーはプライバシーポリシーを気に入っているため選択しました。また、独自のOpenID Connectサーバーを実行する場合もあります。これは全員のニーズをカバーしていると思います。したがって、ユーザー名+パスワード認証へのフォールバックを提供する必要はありません。


編集-私の投稿をもう一度読んで、私は2つの仮定をしたことに気づきました。

  • そのOpenID Connectは、広く使用されている事実上の標準になります。そうでない場合は、代替手段を提供する必要があります。
  • サイトの機密性が高くないこと。その場合は、多要素認証を使用しているはずです。
6
paj28

いいえ、私はそれを信じていませんが、私はセキュリティ目的よりもユーザビリティ目的に焦点を当てていますが、投稿した場所により、この質問であなたが言及しているものではないかもしれませんが、それは検討することが重要です。

私のように第三者認証サービスを利用していない人もいます。これらを唯一のログインオプションとして使用するには、ウェブサイトへのエントリを完全に拒否することになります。ほとんどの関心のある訪問者がそれらのアカウントを持っていることを合理的に確信しています。ただし、関心があるがサードパーティのサービスを使用したくない、または使用したくない場合は、常にフォールバックオプションを提供する必要があります。そうしないと、関心のある参加者を不必要に拒否してしまいます。

5
R W

それは主にユースケースに依存します。たとえば、Plug DJやStackexchangeなどのWebサイトがOpenIDを実装することは許容できると思います。多くの場合、他の形式の認証を提供していませんが、それでも問題ありません。ソーシャルメディアがさらに多くの統計を収集するもう1つの方法であるため、気に入らないユーザーが多数存在しますが、これは実際にはセキュリティの問題ではありません。

機密性の高いアプリケーションの観点から見ると、現在のところ、いくつかの理由で実現可能または受け入れられません。二要素認証の最も重要な認識と2番目の要件(現在、利用可能かどうかはわかりません)。

また、アプリケーションのパスワードに対するセキュリティ制御(パスワードポリシーなど)は、OpenIDプロバイダーの実装で完全に不可逆です。 OpenIDプロバイダーがミスを犯し、パスワードが漏洩した場合、アプリケーションで詐欺が発生した場合の責任は誰にありますか?

4
Lucas Kauffman