Amazon Cognito のサービスリンクロールの使用 - Amazon Cognito

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

Amazon Cognito のサービスリンクロールの使用

Amazon Cognito は AWS Identity and Access Management (IAM) サービスにリンクされたロール を使用します。サービスにリンクされたロールは、 がIAMロールを AWS のサービス 引き受けることを許可する信頼ポリシーを持つ一意のタイプのロールです。サービスにリンクされたロールは Amazon Cognito によって事前定義されており、ユーザーに代わって他の AWS サービスを呼び出すために必要なすべてのアクセス許可が含まれています。

サービスリンクロールでは、必要な許可を手動で追加する必要がないため、Amazon Cognito の設定が簡単になります。Amazon Cognito は、そのサービスリンクロールの許可を定義します。別途定義されている場合を除き、Amazon Cognito しかそのロールを引き受けることができません。定義されたアクセス許可には、信頼ポリシーとアクセス許可ポリシーが含まれ、そのアクセス許可ポリシーを他のIAMエンティティにアタッチすることはできません。

サービスリンクロールを削除するには、まずその関連リソースを削除します。これは、Amazon Cognito リソースを保護します。リソースにアクセスするための許可を誤って削除できなくなくなるからです。

サービスにリンクされたロールをサポートする他のサービスの詳細については、「 AWS と連携するサービスIAM」を参照し、「サービスにリンクされたロール」列で「はい」のサービスを探します。サービスにリンクされたロールに関するドキュメントをサービスで表示するには、[Yes] (はい) リンクを選択します。

Amazon Cognito のサービスリンクロール許可

Amazon Cognito は、以下のサービスリンクロールを使用します。

  • AWSServiceRoleForAmazonCognitoIdpEmailService – Amazon Cognito ユーザープールサービスが Amazon SES ID を使用して E メールを送信できるようにします。

  • AWSServiceRoleForAmazonCognitoIdp – Amazon Cognito ユーザープールがイベントを発行し、Amazon Pinpoint プロジェクトのエンドポイントを設定できるようにします。

AWSServiceRoleForAmazonCognitoIdpEmailService

AWSServiceRoleForAmazonCognitoIdpEmailService サービスリンクロールは、ロールの引き受けについて以下のサービスを信頼します。

  • email.cognito-idp.amazonaws.com

このロールの許可ポリシーは、Amazon Cognito が指定されたリソースで以下のアクションを実行できるようにします。

で許可されるアクション AWSServiceRoleForAmazonCognitoIdpEmailService:
  • アクション: ses:SendEmail および ses:SendRawEmail

  • リソース: *

このポリシーは、Amazon Cognito が指定されたリソースで以下のアクションを完了することを拒否します。

拒否されるアクション
  • アクション: ses:List*

  • リソース: *

これらのアクセス許可により、Amazon Cognito は、Amazon で検証済みの E メールアドレスをユーザーへの E メールSES送信にのみ使用できます。Amazon Cognito は、ユーザーがユーザープールのクライアントアプリで特定のアクション (サインアップやパスワードのリセットなど) を実行するときに、ユーザーに E メールを送信します。

IAM エンティティ (ユーザー、グループ、ロールなど) がサービスにリンクされたロールを作成、編集、または削除できるようにするアクセス許可を設定する必要があります。詳細については、「 ユーザーガイド」の「サービスにリンクされたロールのアクセス許可」を参照してください。 IAM

AWSServiceRoleForAmazonCognitoIdp

AWSServiceRoleForAmazonCognitoIdp サービスにリンクされたロールは、次のサービスを信頼してロールを引き受けます。

  • email.cognito-idp.amazonaws.com

このロールの許可ポリシーは、Amazon Cognito が指定されたリソースで以下のアクションを実行できるようにします。

で許可されるアクション AWSServiceRoleForAmazonCognitoIdp
  • アクション: cognito-idp:Describe

  • リソース: *

このアクセス許可により、Amazon Cognito は Describe Amazon Cognito APIオペレーションを呼び出すことができます。

注記

createUserPoolClient と を使用して Amazon Cognito を Amazon Pinpoint と統合するとupdateUserPoolClient、リソースアクセス許可がインラインポリシーSLRとして に追加されます。インラインポリシーは、mobiletargeting:UpdateEndpoint および mobiletargeting:PutEvents 許可を提供します。これらの許可は、Amazon Cognito が、Cognito に統合された Pinpoint プロジェクトのためにイベントを発行し、エンドポイントを設定できるようにします。

Amazon Cognito のサービスリンクロールの作成

サービスリンクロールを手動で作成する必要はありません。 AWS Management Console、、 AWS CLIまたは Amazon Cognito で E メール配信を処理するために Amazon SES設定を使用するようにユーザープールを設定するとAPI、Amazon Cognito はサービスにリンクされたロールを作成します。

このサービスリンクロールを削除した後で再度作成する必要が生じた場合は、同じ方法でアカウントにロールを再作成できます。Amazon SES設定を使用して E メール配信を処理するようにユーザープールを設定すると、Amazon Cognito はサービスにリンクされたロールを再度作成します。

Amazon Cognito がこのロールを作成する前に、ユーザープールの設定に使用するIAMアクセス許可に iam:CreateServiceLinkedRoleアクションが含まれている必要があります。でのアクセス許可の更新の詳細についてはIAM、IAM「 ユーザーガイド」のIAM「ユーザーのアクセス許可の変更」を参照してください。

Amazon Cognito のサービスリンクロールの編集

AmazonCognitoIdp または AmazonCognitoIdpEmailService サービスにリンクされたロールは で編集できません AWS Identity and Access Management。サービスリンクロールを作成すると、多くのエンティティによってロールが参照される可能性があるため、ロール名を変更することはできません。ただし、 を使用してロールの説明を編集できますIAM。詳細については、IAM「 ユーザーガイド」の「サービスにリンクされたロールの編集」を参照してください。

Amazon Cognito のサービスリンクロールの削除

サービスリンクロールを必要とする機能またはサービスが不要になった場合には、そのロールを削除することをお勧めします。ロールを削除すると、Amazon Cognito が積極的にモニタリングまたは維持しているエンティティのみを保持します。 AmazonCognitoIdp または AmazonCognitoIdpEmailService サービスにリンクされたロールを削除する前に、ロールを使用するユーザープールごとに次のいずれかを実行する必要があります。

  • ユーザープールを削除する。

  • ユーザープールの E メール設定を更新して、デフォルトの E メール機能を使用する。デフォルト設定では、サービスリンクロールが使用されません。

ロールを使用するユーザープール AWS リージョン を使用して、 で アクションを実行することを忘れないでください。

注記

リソースを削除しようとするときに Amazon Cognito サービスがロールを使用している場合は、削除が失敗する可能性があります。失敗した場合は、数分待ってから操作を再試行してください。

Amazon Cognito ユーザープールを削除する
  1. にサインイン AWS Management Console し、 で Amazon Cognito コンソールを開きますhttps://console.aws.amazon.com/cognito

  2. [Manage User Pools] (ユーザープールの管理) をクリックします。

  3. [Your User Pools] (ユーザープール) ページで、削除するユーザープールを選択します。

  4. [Delete pool] (プールの削除) をクリックします。

  5. [Delete user pool] (ユーザープールの削除) ウィンドウで「delete」と入力し、[Delete pool] (プールの削除) をクリックします。

デフォルトの E メール機能を使用するために Amazon Cognito ユーザープールを更新する

  1. にサインイン AWS Management Console し、 で Amazon Cognito コンソールを開きますhttps://console.aws.amazon.com/cognito

  2. [Manage User Pools] (ユーザープールの管理) をクリックします。

  3. [Your User Pools] (ユーザープール) ページで、更新するユーザープールを選択します。

  4. 左側のナビゲーションメニューで [Message customizations] (メッセージのカスタマイズ) をクリックします。

  5. 「Amazon SES設定を介して E メールを送信しますか?」で、いいえ - Cognito (デフォルト) を使用します

  6. E メールアカウントオプションの設定を終了したら、[Save changes] (変更の保存) をクリックします。

を使用してサービスにリンクされたロールを手動で削除するには IAM

IAM コンソール、、または AWS API を使用して AWS CLI、 AmazonCognitoIdp または AmazonCognitoIdpEmailService サービスにリンクされたロールを削除します。詳細については、IAM「 ユーザーガイド」の「サービスにリンクされたロールの削除」を参照してください。

Amazon Cognito サービスリンクロールがサポートされるリージョン

Amazon Cognito は、サービスが利用可能なすべての AWS リージョン でサービスにリンクされたロールをサポートします。詳細については、「AWS リージョン およびエンドポイント」を参照してください。