UserInfo エンドポイント - Amazon Cognito

UserInfo エンドポイント

userInfo エンドポイントは OpenID Connect (OIDC) userInfo エンドポイントです。トークンエンドポイント が発行したアクセストークンをサービスプロバイダーが提示すると、ユーザー属性で応答します。ユーザーのアクセストークンのスコープは、userInfo エンドポイントがレスポンスで返すユーザー属性を定義します。openid スコープはアクセストークンクレームのいずれかである必要があります。

Amazon Cognito は、InitiateAuth などのユーザープール API リクエストに応答してアクセストークンを発行します。スコープが含まれていないため、userInfo エンドポイントはこれらのアクセストークンを受け入れません。代わりに、トークンエンドポイントからアクセストークンを提示する必要があります。

OAuth 2.0 サードパーティーの ID プロバイダー (IdP) は、userInfo エンドポイントもホストしています。ユーザーがその IdP で認証すると、Amazon Cognito は IdP token エンドポイントと認証コードを表示せずに交換し、IdP userInfo エンドポイントからユーザー情報を取得します。

GET /oauth2/userInfo

アプリは、ブラウザ経由ではなく、このエンドポイントに直接リクエストを送信します。

詳細については、OpenID Connect (OIDC) 仕様の「UserInfo エンドポイント」を参照してください。

ヘッダーのリクエストパラメータ

許可: べアラー <access_token>

認証ヘッダーフィールドを使用してアクセストークンを渡します。

必須。

リクエスト例

GET https://<your-user-pool-domain>/oauth2/userInfo Authorization: Bearer <access_token>

肯定応答の例

HTTP/1.1 200 OK Content-Type: application/json;charset=UTF-8 { "sub": "248289761001", "name": "Jane Doe", "given_name": "Jane", "family_name": "Doe", "preferred_username": "j.doe", "email": "janedoe@example.com", "phone_number": "+12065551212", "email_verified": "true", "phone_number_verified": "true" }

OIDC クレームのリストについては、「スタンダードクレーム」を参照してください。現在、Amazon Cognito は、email_verified と phone_number_verified の値を文字列として返します。

否定応答の例

リクエストが無効です

HTTP/1.1 400 Bad Request WWW-Authenticate: error="invalid_request", error_description="Bad OAuth2 request at UserInfo Endpoint"
invalid_request

リクエストに必須パラメータが含まれていないか、サポートされていないパラメータ値が含まれている、または正しい形式ではありません。

トークンが無効です

HTTP/1.1 401 Unauthorized WWW-Authenticate: error="invalid_token", error_description="Access token is expired, disabled, or deleted, or the user has globally signed out."
invalid_token

アクセストークンの有効期限が切れているか、失効している、正しい形式ではない、または無効です。