OpenID 仕様では、次のように述べています。
- 識別子:
識別子は単なる URL です。OpenID 認証プロトコルの全体の流れは、エンド ユーザーが URL を所有していることを証明することです。
- 要求された識別子:
消費者によってまだ検証されていませんが、エンド ユーザーが所有していると言う識別子。
- 検証済み識別子:
エンド ユーザーが所有していることを消費者に証明した識別子。
- ID プロバイダー:
「IdP」または「サーバー」とも呼ばれます。これは、エンド ユーザーが要求された識別子を所有していることを暗号で証明するために、コンシューマーが接続する OpenID 認証サーバーです。エンド ユーザーが ID プロバイダーに対して認証する方法は、OpenID 認証の範囲外です。
識別子の URL は一意ですか? 正確には何ですか?
一意でない場合、消費者が同じ OpenID エンドポイント URL 上の異なるユーザー間で異なるようにするための一意のものはありますか?
IdP と識別子 URL の違いは何ですか?
他の場所で、「OpenID エンドポイント URL」という用語を読んだことがあります。
- OpenID エンドポイント URL は IdP と同じですか? IdPもURLですか?
例として、Google の OpenID を見てみましょう。一部のサイトで OpenID ログインを要求された場合、私は OpenID URL を使用しますhttps://www.google.com/accounts/o8/id
。それは識別子のURLですか?もしそうなら、それは明らかにユニークではありません。多くの場合、OpenID ログインについてそのサイトのアカウント設定をもう一度確認すると、入力した URL は表示されませんが、何らかの形で のように拡張されていますhttps://www.google.com/accounts/o8/id?id=AltOawk...
。その URL は今ではユニークなようです。
の目的は
https://www.google.com/accounts/o8/id
何ですか?それは OpenID エンドポイントの URL ですか? それとも IdP URL ですか (それが何か違う場合)?そして、の目的は
https://www.google.com/accounts/o8/id?id=AltOawk...
何ですか?それは本当にユニークで、私のGoogle アカウントで常に同じですか? その URL は私を識別するものですか?なぜ彼ら
https://www.google.com/accounts/o8/id?u={google-username}
はこの不可解な の代わりに使用しなかったの...?id=AltOawk...
ですか?Google の場合の識別子 URL は何ですか?
OpenID エンドポイント URL とは何ですか? (IdP URL とは何ですか?)
私が質問している理由は、独自の OpenID エンドポイントを実装しようとしているからです。
- OpenID エンドポイント URL は識別子 URL と同じですか?
私の OpenID エンドポイントの実装では、異なるユーザー間で異なることができないというまさにその問題があります。コンシューマー Web サイトは、その OpenID エンドポイントのすべてのユーザーを同じものとして扱います。もちろん、常に同じ OpenID URL ですが、Google の OpenID の場合も同様です。
- エンド ユーザーがこの「一般的な」URL を使用する場合、OpenID エンドポイントの実装でそれを「具体的な」/一意の (識別子?) URL にリダイレクト/転送するにはどうすればよいですか? または、同じ OpenID URL で異なるエンド ユーザーを区別するにはどうすればよいですか?
現在の実装では、デバッグ トレースを有効にすると、最初に取得する要求はモード checkid_setup です。仕様では、ここで Claimed Identifier を取得していると書かれています。コンシューマー サイトで入力した内容 (デバッグ トレースも同じことを示しています) のため、これが「一般的な」URL (OpenID エンドポイント URL) です。つまり、それは一意の URLではありません。
- その時点でリダイレクトを行う必要がありますか? 仕様はそれについて何も言いません。「具体的な」URL はどこに伝えればよいですか? (私の場合、それは URL
http://{endpoint-url}?u={endpoint-username}
です。)
「OpenID サーバー」(URL) および「OpenID デリゲート」(URL) という用語もあります。
これらの用語は、上記の他の用語とどのように関連していますか? OpenID エンドポイント URL とまったく同じですか?
「OpenID ID」とは何ですか? OpenID識別子のURLと同じ?
関連する質問も参照してください: OpenID は、同じ OpenID エンドポイントの異なるログイン間でどのように異なりますか?
(メタの質問: これを多くの独立した SO の質問に分割する必要がありますか?そうしないと、すべての質問に対する回答が得られないのではないかと心配しています。)