翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
OAuth 2.0 許可
Amazon Cognito ユーザープール OAuth 2.0 認証サーバーは、3 種類の OAuth 2.0 認証許可
- 認可コード付与
-
認証リクエストが成功すると、認証サーバーはコールバック に
code
パラメータに認証コードを追加しますURL。次に、トークンエンドポイント と、アクセス、ID、更新トークンのコードを交換することができます。認証コードの付与をリクエストするには、リクエストcode
でresponse_type
を に設定します。リクエスト例については、「認可コード付与」を参照してください。認可コード付与は、最も安全な認可付与の形式です。トークンの内容がユーザーに直接表示されることはありません。代わりに、ユーザーのトークンを取得して安全に保管する責任はアプリにあります。Amazon Cognito では、認可コード付与が 3 種類のトークン (ID、アクセス、更新) すべてを認可サーバーから取得する唯一の方法です。Amazon Cognito ユーザープール を介して認証から 3 つのトークンタイプをすべて取得することもできますがAPI、 APIは 以外のスコープのアクセストークンを発行しません
aws.cognito.signin.user.admin
。 - 暗黙的な付与
-
認証リクエストが成功すると、認証サーバーは
access_token
パラメータにアクセストークン、id_token
パラメータの ID トークンをコールバック に追加しますURL。暗黙的な許可では、トークンエンドポイント に追加の操作は必要ありません。暗黙的な許可をリクエストするには、リクエストでresponse_type
をtoken
に設定します。暗黙的な許可では、ID とアクセストークンのみが生成されます。リクエスト例については、「openid スコープを使用しないトークン付与」を参照してください。暗黙的な許可は、レガシーの認可付与方法です。認可コード付与とは異なり、ユーザーはトークンを傍受して検査できます。暗黙的な許可によるトークンの配信を防ぐには、認可コード付与のみをサポートするようにアプリクライアントを設定します。
- クライアント認証情報
-
クライアント認証情報は、アクセスの認可のみの machine-to-machine許可です。クライアント認証情報許可を受けるには、認可エンドポイント をバイパスして、トークンエンドポイント に直接リクエストを生成してください。アプリクライアントにはクライアントシークレットが必要で、クライアント認証情報許可のみをサポートする必要があります。リクエストが成功すると、認可サーバーがアクセストークンを返します。
クライアント認証情報グラントからのアクセストークンは、2.0 OAuth スコープを含む認証メカニズムです。通常、トークンには、アクセス保護された へのHTTPオペレーションを許可するカスタムスコープクレームが含まれていますAPIs。詳細については、「スコープ、M2M 、および APIs リソースサーバー」を参照してください。
クライアント認証情報は、 AWS 請求書にコストを追加します。詳細については、「Amazon Cognito の料金
」を参照してください。
これらの許可とその実装の詳細については、OAuthAmazon Cognito: セキュリティブログ」の「さまざまな OAuth 2.0 許可について学ぶ