このシナリオを考えてみましょう。識別子として使用する独自の Web サイトを持っていますが、こちらで説明されているように、サードパーティの OpenID プロバイダー (私の場合は yahoo) を使用して、stackoverflow や sourceforge などの Relying Party (RP) Web サイトにログインしています。
それは賢明な動きのようでした:
- 私は OpenID プロバイダーに縛られていません。なぜなら、yahoo がサービスを提供しなくなったり、料金を請求し始めたり、ヤフーを信頼しなくなったりした場合でも、プロバイダーを簡単に切り替えることができるからです。
- サーバーに OpenID プロバイダーをインストールして維持するための経済的、管理的、およびセキュリティ上の負担がありません。
質問
RP はどのように機能するはずですか? 私の理解では、私が 提供する識別子を使用し、プロバイダー (yahoo) を認証にのみ使用する必要があります (識別には使用しません)。あれは正しいですか?最近何か変わった?明確にするために、私の身分証明書は
http://www.mysite.com/myPreferredUrl
そしてそうではない
https://me.yahoo.com/myYahooId (上記の Web サイトで説明されているように、私の Web サイトが認証を「リダイレクト」する場所です)
サイドノート
私がこの質問をしている理由は、現在、物事が壊れているように見えるからです (数か月前は問題ありませんでした)。stackoverflow にログインしようとすると、mysite.com の URL を書きます。ログインした yahoo Web サイトに正しく「リダイレクト」され、「stackoverflow を続行しますか」と尋ねられます。はい、「リダイレクト」し、stackoverflow サイトで「これは今までに見たことのない OpenID です」と表示され、私の yahoo ID が表示され、実際にロックアウトされました!
それはバグですか、それとも何か不足していますか?
PS: 私がこの質問をどのように書いているのか疑問に思っているなら、これは、私が使用している多くのマシンの 1 つに、ブラウザーがまだ有効な Cookie を持っているためです....
編集: 以下の Andrew Arnott の回答は、私の問題を解決する方法を提案しています (つまり、別のプロバイダーに切り替える)。しかし、私はまだいくつかの詳細に興味があります: 委任に関して、OpenID 1.1 から 2.0 で何が変わったのでしょうか? 仕様で、プロバイダーが委任を「解除」できるように選択されているのはなぜですか? 説明すればするほど、回答が受け入れられる可能性が高くなります。