メニュー
Amazon Cognito
開発者ガイド

ID プール (フェデレーティッドアイデンティティ) を使用する

Amazon Cognito ID プールは、ゲストユーザー (未認証) と認証してトークンを受け取ったユーザーに一時的な AWS 認証情報を提供します。ID プールはアカウントに固有のユーザー ID データのストアです。

コンソールで新しい ID プールを作成する

  1. Amazon Cognito コンソールにサインインし、[フェデレーテッドアイデンティティの管理]を選択してから、[Create new identity pool] を選択します。

  2. ID プールの名前を入力します。

  3. 認証されていない ID を有効にするには、[Unauthenticated identities] 折りたたみ可能セクションの [Enable access to unauthenticated identities] を選択します。

  4. 必要なら、[Authentication providers] セクションで認証プロバイダを設定します。

  5. [Create Pool] を選択します。

    注記

    有効な ID プールには少なくとも 1 つの ID が必要です。

  6. AWS リソースへのアクセスが求められます。

    [Allow] を選択して、ID プールに関連付けられた 2 つのデフォルトロール (1 つは認証されていないユーザー用、もう 1 つは認証されたユーザー用) を作成します。これらのデフォルトのロールは、Amazon Cognito Sync への ID プールアクセスを提供します。ID プールに関連付けられたロールは、IAM コンソールで変更できます。Amazon Cognito コンソールを使用する追加手順については、「Amazon Cognito コンソールの使用」を参照してください。

ユーザー IAM ロール

IAM ロールは、Amazon Cognito Sync などの AWS リソースにアクセスするためのユーザーのアクセス権限を定義します。アプリケーションのユーザーは、作成されたロールを引き受けます。認証されたユーザーと認証されていないユーザー用に、異なるロールを指定できます。IAM ロールの詳細については、「IAM ロール」を参照してください。

認証された ID と認証されていない ID

Amazon Cognito は、認証された ID と認証されていない ID の両方をサポートします。認証された ID は任意のサポートされている認証プロバイダで認証されたユーザーに属します。通常、認証されていない ID はゲストユーザーに属します。

認証されていない ID を有効または無効にする

Amazon Cognito ID プールは、ID プロバイダーを使って認証を行わないユーザー用に、一意の識別子や AWS 認証情報を提供して、認証されていない ID をサポートできます。アプリケーションで、ログインしないユーザーを許可している場合、認証されていない ID 用にアクセスを有効にできます。詳細については、「Amazon Cognito ID プール (フェデレーティッドアイデンティティ) での作業開始」を参照してください。

Amazon Cognito コンソールから [Manage Federated Identities] (フェデレーテッドアイデンティティの管理) を選択します。

  1. 認証されていない ID を有効または無効にする ID プールの名前をクリックします。ID プールの [Dashboard] ページが表示されます。

  2. [Dashboard] ページの右上にある、[Edit identity pool] をクリックします。[Edit identity pool] ページが表示されます。

  3. 下にスクロールし、[Unauthenticated identities] をクリックして拡張します。

  4. 認証されていない ID へのアクセスを有効または無効にするチェックボックスをオンにします。

  5. [Save Changes] をクリックします。

ID の種類に関連付けられたロールを変更する

ID プールでは、認証された ID と認証されていない ID という 2 種類の ID が定義されます。ID プールのすべての ID は、認証されているか、認証されていないかのいずれかです。認証された ID は、パブリックログインプロバイダー (Amazon Cognito ユーザープール、Facebook、Amazon、Google、SAML、任意の OpenID Connect プロバイダ) によって認証されたユーザー、または開発者プロバイダー (独自のバックエンド認証プロセス) によって認証されたユーザーに属します。通常、認証されていない ID はゲストユーザーに属します。

各 ID の種類について、割り当てられたロールがあります。このロールにはアタッチされているポリシーがあり、それによりロールがアクセスできる AWS サービスが決まります。Amazon Cognito がリクエストを受け取ると、サービスは ID の種類を判別し、その ID の種類に割り当てられたロールを判別して、そのロールにアタッチされたポリシーを使用して応答します。ポリシーを変更するか、ID の種類に別のロールを割り当てることにより、ID の種類でアクセスできる AWS サービスを制御できます。ID プールでロールに関連付けられたポリシーを表示または変更する方法については、「AWS IAM コンソール」を参照してください。

ID の種類に関連付けられているロールは、Amazon Cognito ID プール (フェデレーティッドアイデンティティ) コンソールを使用して簡単に変更できます。Amazon Cognito コンソールから [Manage Federated Identities] (フェデレーテッドアイデンティティの管理) を選択します。

  1. ロールを変更する ID プールの名前をクリックします。ID プールの [Dashboard] ページが表示されます。

  2. [Dashboard] ページの右上にある、[Edit identity pool] をクリックします。[Edit identity pool] ページが表示されます。

  3. [Unauthenticated role] および [Authenticated role] の横のドロップダウンメニューを使用して、ロールを変更します。AWS IAM コンソールで、各 ID の種類に関連付けられたロールを作成または変更するには、[Create new role] をクリックします。詳細については、「IAM ロール」を参照してください。

認証プロバイダーを有効にする、または編集する

パブリック ID プロバイダー (Amazon Cognito ユーザープール、Facebook、Amazon など) を使用した認証をユーザーに許可している場合、Amazon Cognito ID プール (フェデレーテッドアイデンティティ) コンソールでアプリケーション ID を指定できます。これにより、アプリケーション ID(パブリックログインプロバイダーによって提供)が ID プールに関連付けられます。

このページからプロバイダごとの認証ルールを設定することもできます。プロバイダごとに、最大 25 個のルールを割り当てることができます。ルールは、プロバイダごとに保存した順序で適用されます。詳細については、「ロールベースアクセスコントロール」を参照してください。

警告

ID プールがリンクされたアプリケーション ID を変更すると、既存のユーザーによる ID プールでの認証が無効になります。詳細情報 ID プール (フェデレーテッドアイデンティティ) 外部 ID プロバイダー.

Amazon Cognito コンソールから [Manage Federated Identities] (フェデレーテッドアイデンティティの管理) を選択します。

  1. 外部プロバイダーを有効にする ID プールの名前をクリックします。ID プールの [Dashboard] ページが表示されます。

  2. [Dashboard] ページの右上にある、[Edit identity pool] をクリックします。[Edit identity pool] ページが表示されます。

  3. 下にスクロールし、[Authentication providers] をクリックして展開します。

  4. 適切なプロバイダーのタブをクリックし、その認証プロバイダーと関連付けられている必要な情報を入力します。

ID プールを削除する

Amazon Cognito コンソールから [Manage Federated Identities] (フェデレーテッドアイデンティティの管理) を選択します。

  1. 削除する ID プールの名前をクリックします。ID プールの [Dashboard] ページが表示されます。

  2. [Dashboard] ページの右上にある、[Edit identity pool] をクリックします。[Edit identity pool] ページが表示されます。

  3. 下にスクロールし、[Delete identity pool] をクリックして展開します。

  4. [Delete identity pool] をクリックします。

  5. [Delete pool] をクリックします。

警告

削除ボタンをクリックすると、ID プールと、それに含まれているすべてのユーザーデータが完全に削除されます。ID プールを削除すると、その ID プールを利用しているアプリケーションや他のサービスは動作を停止します。

ID プールから ID を削除する

Amazon Cognito コンソールから [Manage Federated Identities] (フェデレーテッドアイデンティティの管理) を選択します。

  1. 削除する ID を含む ID プールの名前をクリックします。ID プールの [Dashboard] ページが表示されます。

  2. [Dashboard] ページの左側のナビゲーションで、[Identity browser] をクリックします。[Identities] ページが表示されます。

  3. [Identities] ページで、削除するアイデンティティ ID を入力し、[Search] をクリックします。

  4. [Identity details] ページで、[Delete identity] ボタンをクリックし、[Delete] をクリックします。