チュートリアル: ID プールの作成 - Amazon Cognito

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

チュートリアル: ID プールの作成

ID プールを使用すると、ユーザーは Amazon S3 や DynamoDB などの AWS のサービスにアクセスするための一時的な AWS 認証情報を取得できます。

コンソールで新しい ID プールを作成する
  1. Amazon Cognito コンソールにサインインし、アイデンティティプールを選択します。

  2. [ID プールを作成] を選択します。

  3. [ID プールの信頼を設定] で、アイデンティティプールを認証アクセスゲストアクセス、またはその両方に設定することを選択します。

    1. [認証アクセス] を選択した場合、アイデンティティプールの認証済み ID のソースとして設定する ID タイプを 1 つ以上選択します。[カスタムデベロッパープロバイダー] を設定した場合、アイデンティティプールの作成後にそのプロバイダーを変更したり削除したりすることはできません。

  4. [許可を設定] で、アイデンティティプール内の認証済みユーザーまたはゲストユーザーのデフォルトの IAM ロールを選択します。

    1. Amazon Cognito に、基本的な権限とアイデンティティプールとの信頼関係を持つ新しいロールを作成する場合は、[新しい IAM ロールを作成] を選択します。新しいロールを識別するための IAM ロール名を入力します (たとえば myidentitypool_authenticatedrole)。[ポリシードキュメントを表示] を選択して、Amazon Cognito が新しい IAM ロールに割り当てるアクセス権限を確認します。

    2. 使用する AWS アカウント にロールが既にある場合は、既存の IAM ロールを使用することを選択できます。cognito-identity.amazonaws.com を含めるように IAM ロールの信頼ポリシーを設定する必要があります。リクエストが特定のアイデンティティプール内の認証されたユーザーから送信されたという証拠を提示した場合にのみ、Amazon Cognito がロールを引き継ぐことを許可するようにロールの信頼ポリシーを設定します。詳細については、「ロールの信頼とアクセス権限」を参照してください。

  5. [ID プロバイダーを接続] で、[ID プールの信頼の設定] で選択した ID プロバイダー (IdPs) の詳細を入力します。OAuth アプリケーションクライアント情報の提供、Amazon Cognito ユーザープールの選択、IAM IdP の選択、またはディベロッパープロバイダーのカスタム識別子の入力を求められる場合があります。

    1. 各 IdP の [ロール設定] を選択します。その IdP のユーザーに、認証済みロールを設定したときに設定したデフォルトロールを割り当てることも、ルール付きのロールを選択することもできます。Amazon Cognito ユーザープール IdP では、トークンに preferred_role を含むロールを選択することもできます。cognito:preferred_role クレームの詳細については、「グループへの優先順位の値の割り当て」を参照してください。

      1. [ルールを使用してロールを選択する] を選択した場合、ユーザー認証からのソースクレーム、クレームを比較するオペレータ、このロール選択と一致するおよびロール割り当てが一致したときに割り当てるロールを入力します。別の条件に基づいて追加のルールを作成するには、[別のものを追加] を選択します。

      2. [ロールの解決] を選択します。ユーザーのクレームがルールに合わない場合は、認証情報を拒否するか、認証済みロールの認証情報を発行できます。

    2. アクセスコントロールの属性は、IdP ごとに個別に設定できます。アクセスコントロールの属性は、Amazon Cognito がユーザーの一時セッションに適用するプリンシパルタグにユーザーのクレームをマッピングします。セッションに適用するタグに基づいてユーザーアクセスをフィルタリングするIAMポリシーを作成できます。

      1. プリンシパルタグを適用しない場合は、[非アクティブ] を選択します。

      2. sub および aud クレームに基づいてプリンシパルタグを適用するには、[デフォルトマッピングを使用] を選択します。

      3. プリンシパルタグへの属性の独自のカスタムスキーマを作成するには、[カスタムマッピングを使用] を選択します。次に、タグに表示したい各クレームから取得するタグキーを入力します。

  6. [プロパティの設定] の [ID プール名] に [名前] を入力します。

  7. [基本 (クラシック) 認証] で、ベーシックフローを有効にするかどうかを選択します。基本フローがアクティブになっていると、IdPs に対して行ったロール選択をバイパスして AssumeRoleWithWebIdentity を直接呼び出すことができます。詳細については、「ID プール (フェデレーティッドアイデンティティ) の認証フロー」を参照してください。

  8. アイデンティティプールにタグを適用する場合は、[タグ] で [タグの追加] を選択します。

  9. [確認および作成] で、新しいアイデンティティプールに対して行った選択を確認します。[編集] を選択してウィザードに戻り、設定を変更します。終了したら、[ID プールの作成] を選択します。

ID プールの詳細については、「Amazon Cognito アイデンティティプール」を参照してください。

Amazon S3 で ID プールを使用する例については、「ブラウザから Amazon S3 への写真のアップロード」を参照してください。