ユーザーの認証にOpenIDを使用することで人気が高まり、実際、Webアプリが使いやすくなります。
しかし、OpenIDを実装するかどうかを決定するときに注意すべきセキュリティの考慮事項は何ですか?
どんな種類のウェブアプリにも適していますか?または、このようなユーザー認証の処理方法を使用してはならないWebアプリケーションのカテゴリはありますか?
EコマースアプリケーションにOpenIDを使用しても問題ありませんか?
私はoffer OpenIdを介してサインアップすることは理にかなっていると思いますが、e-commerceウェブサイトであってもrequireはそうではありません。
この理由は、技術に詳しいユーザー(まだopenidのコアユーザーベース)がそのリスクを取るかどうかを決定できるためです。
OpenIdの使用を推奨しないサイトは、非常に機密性の高いサイトです。銀行サイト、またはユーザーのIDの制御も必要とするプライベート/コーポレートシステム(ユーザー中心のIDではなくエンタープライズ中心のID)。
OpenIdを使用することには明らかな利点があります。パスワード、リセット、セキュリティなどを含むユーザーのIDを管理し、それに伴うリスクを受け入れる必要がないからです。
各OpenIDプロバイダーには、セキュリティ機能と欠点のトレードオフがあります。例えば:
特徴
Google、Facebook、MyOpenID、Verisignはすべて、さまざまな程度の2要素サポートを提供しています。 (Verisignは最も安全なIMHOです)
それらはすべてサポートしています Javascriptフリー操作 (セキュリティ偏執的なユーザー向け)
MyOpenIDとLiveIDによるプライバシーと匿名性の強化(他の多くはありません)
パスワード変更ポリシー
サインインシール(Yahoo、ADFSv2)
欠陥
多くのサイトは同じHTTPヘッダーセキュリティを提供していません ここに記載されているように 。つまり、一部のサイトは、他のサイトよりもMITM、FireSheep、トークンのリプレイ、またはクリックジャッキングに対して脆弱です。
さまざまなサイト間で実際に一貫性はまったくありません。
そして、これはほんの始まりにすぎません。私は ここに多くの貴重なハイパーリンクを含むより詳細な投稿 を持っています。そこで、私は主要なOpenIDプロバイダーのすべてのセキュリティ機能を比較し、コミュニティから他に考慮すべき機能やIDPを要求しています。
リストされていないセキュリティ機能を備えたIDPを発見した場合は、どなたでもそこに投稿することをお勧めします。
あらゆる種類のウェブアプリに適していますか?
エンドユーザーがすべての標準設定を選択した場合、Verisignはより高いセキュリティシナリオの信頼できる名前になると思います。私は their HTTP headers (繰り返しリンク)の設定のファンではありません。証明書利用者(Webサイト)がRPからのリプレイされたCookieおよび以前のセッションから自分自身を保護することを確認してください。
Windows/IISを証明書利用者として使用している場合は、前の段落で言及したシナリオから保護するために、詳細情報を送信できます。
追加研究
Microsoftには詳細な OpenIDのセキュリティ問題のホワイトペーパーはこちら があります。著者にメールを送ったところ、アナライザーが http://sso-analysis.org/ に分析ツールをリリースしました。分析ツールはこちらから入手できます。 http://sso-analysis.org/aaas/ brm-analyzer.html
電子商取引のWebサイトにopenidを使用することは良い考えではないと思いますが、ソーシャルネットワーキングWebサイトや情報Webサイトに使用してもかまいません。
理由は次のとおりです。
OpenIDの内部の仕組みが十分にわからないという単純な理由で、OpenIDは何にも使用しません。一般的に言って私はこれを言うでしょう。
アクセス管理をアウトソーシングすることで、主要プロバイダーの1つで何かが発生した場合に備えて、秋に備えます。
たとえば、グーグルが悪になり始めることを決定し、ユーザーのパスワードを第三者に販売し、その第三者がサイトにアクセスし、ユーザーに代わって何かを行うとしましょう。
ユーザーはGoogleに腹を立てるのではなく、あなたに腹を立てます。
そして、この極端な状況ではあなたの背後に法律がありますが、ユーザー情報が他の形式で漏洩した場合に訴訟が起こるかどうかはわかりません。