OpenID Connect 1.0は、OAuth2.0プロトコルの上にある単純なIDレイヤーです。 これは、既存のOAuth認証フローを補足し、ユーザーに関する情報をクライアントに適切に説明された方法で提供します。
OpenID接続は、OAuthを実装し、認証されたユーザーに関する情報を共有するための標準化された方法です。 使用するサービスを構成できるようになります ORCID 他の標準に準拠したOpenID接続プロバイダーと一緒に「箱から出して」。 OpenID接続は共有可能も提供します ID トークン。これは、ユーザーがを使用して認証されたことを証明できる署名済みオブジェクトです。 ORCID 特定の時間に。 これらのトークンは、ユーザーインターフェイス要素がユーザーセッションを維持するために使用できます。
ORCID OAuth認証コードフローの拡張である基本的なOpenIDプロバイダー適合性プロファイルをサポートします。 ORCID 「/ authenticate」スコープと「openid」スコープの暗黙的なトークンフローもサポートします。
これは、 ORCID:
- 署名された埋め込み id 'openid'スコープで生成された認証コードのトークン応答内のトークン
- 'token'または 'token id_token'response_typesおよび' openid 'スコープを使用する場合の暗黙的なフローをサポートします。
- 'openid'スコープを含む承認リクエストの 'prompt'、 'nonce'、および 'max_age'パラメーターをサポートします。
- OpenidConnectの検出とuserinfoエンドポイントをサポートします
- 'openid'スコープを含む承認リクエストのメンバーAPIを使用するインテグレーターの 'amr'フィールドをサポートします。 これは、ユーザーがXNUMX要素認証を使用して認証されたかどうかを検出するために使用できます。
OpenID Connect認証の開始は、通常のOAuth認証と同じように機能します。 必要なのは、クライアントが「openid」スコープを要求することだけです。/authenticateスコープを使用している場合は、openidに置き換えます。authenticateとopenidは同じ認証を持っているため、どちらか一方のみを使用する必要があります。 他のスコープを使用している場合は、要求されたスコープのリストにopenidを追加します。 openidスコープが含まれている場合、レジストリはトークン応答内にid_tokenを返し、そのユーザーのユーザー情報エンドポイントにアクセスするためのアクセス許可をクライアントに付与します。
「openid」スコープは、他のスコープのように「/」で始まらないことに注意してください。 ORCID APIスコープ。 これは、「openid」スコープがによって定義されていないためです。 ORCID、ただし、代わりにOpenIDConnect仕様で定義されています。
取り付けガイドを参照してください。 技術文書 をご覧ください。