Cookie の設定を選択する

当社は、当社のサイトおよびサービスを提供するために必要な必須 Cookie および類似のツールを使用しています。当社は、パフォーマンス Cookie を使用して匿名の統計情報を収集することで、お客様が当社のサイトをどのように利用しているかを把握し、改善に役立てています。必須 Cookie は無効化できませんが、[カスタマイズ] または [拒否] をクリックしてパフォーマンス Cookie を拒否することはできます。

お客様が同意した場合、AWS および承認された第三者は、Cookie を使用して便利なサイト機能を提供したり、お客様の選択を記憶したり、関連する広告を含む関連コンテンツを表示したりします。すべての必須ではない Cookie を受け入れるか拒否するには、[受け入れる] または [拒否] をクリックしてください。より詳細な選択を行うには、[カスタマイズ] をクリックしてください。

IAM ロール

フォーカスモード
IAM ロール - Amazon Cognito

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

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

ID プールの作成中に、ユーザーが引き受ける IAM ロールを更新するよう求められます。IAM ロールは次のように動作します。ユーザーがアプリにログインすると、Amazon Cognito がそのユーザー用に一時的な AWS 認証情報を生成します。これらの一時的な認証情報は、特定の IAM ロールに関連付けられます。IAM ロールでは、 AWS リソースにアクセスするための許可一式を定義できます。

認証されたユーザーと認証されていないユーザー用に、デフォルトの IAM ロールを指定できます。また、ユーザーの ID トークンのクレームに基づいて、各ユーザーのロールを選択するルールを定義できます。詳細については、「ロールベースアクセスコントロールの使用」を参照してください。

Amazon Cognito コンソールは、Amazon Mobile Analytics および Amazon Cognito Sync へのアクセス権を提供する IAM ロールをデフォルトで作成します。または、既存の IAM ロールの使用を選択できます。

IAM ロールを変更して、他のサービスへのアクセスを許可または制限します。これを行うためには、IAM コンソールにログインします。次に、[Roles] (ロール) を選択し、ロールを選択します。選択されたロールにアタッチされたポリシーが、[Permissions] (アクセス許可) タブに表示されます。対応する [Manage Policy] (ポリシーの管理) リンクを選択してアクセスポリシーをカスタマイズできます。ポリシーの使用と定義の詳細については、「IAM ポリシーの概要」を参照してください。

注記

ベストプラクティスとして、最小権限の付与の原則に準拠したポリシーを定義します。つまり、ポリシーには、ユーザーがタスクを実行するために必要なアクセス権限のみを含めます。詳細については、「IAM ユーザーガイド」「Grant Least Privilege」(最小権限を付与する) を参照してください。

認証されていない ID は、アプリにログインしていないユーザーが引き受けることに注意してください。通常、認証されていない ID に割り当てるアクセス権限は、認証された ID に割り当てるアクセス権限よりも制限が厳しいものである必要があります。

信頼ポリシーのセットアップ

Amazon Cognito は IAM ロールを使用して、アプリケーションのユーザー用の一時的な認証情報を生成します。アクセス権限へのアクセスは、ロールの信頼関係によって制御されます。詳細情報 ロールの信頼とアクセス権限

に提示されるトークン AWS STS は、ユーザープール、ソーシャル、または OIDC プロバイダートークン、または SAML アサーションを独自のトークンに変換する ID プールによって生成されます。アイデンティティプールトークンには、アイデンティティプール ID として aud クレームが含まれています。

次のロール信頼ポリシーの例では、フェデレーティッドサービスプリンシパルが AWS STS API を呼び出すcognito-identity.amazonaws.comことを許可しますAssumeRoleWithWebIdentity。リクエストが成功するのは、API リクエストのアイデンティティプールトークンに以下のクレームが含まれている場合のみです。

  1. アイデンティティプール ID audus-west-2:abcdefg-1234-5678-910a-0e8443553f95 クレーム。

  2. ユーザーがログインしていて、ゲストユーザーではない場合に追加される authenticatedamr クレーム。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Federated": "cognito-identity.amazonaws.com" }, "Action": "sts:AssumeRoleWithWebIdentity", "Condition": { "StringEquals": { "cognito-identity.amazonaws.com:aud": "us-west-2:abcdefg-1234-5678-910a-0e8443553f95" }, "ForAnyValue:StringLike": { "cognito-identity.amazonaws.com:amr": "authenticated" } } } ] }

基本 (クラシック) 認証での IAM ロールの信頼ポリシー

アイデンティティプールで使用するロールの信頼ポリシーを制限する条件を少なくとも 1 つ適用する必要があります。ID プールのロール信頼ポリシーを作成または更新すると、ソース ID を制限する条件キーを少なくとも 1 つ使用せずに変更を保存しようとすると、IAM はエラーを返します。ID プールからこのタイプの条件がない IAM ロールへのクロスアカウント AssumeRoleWithWebIdentity オペレーションは許可 AWS STS されません。

このトピックには、アイデンティティプールのソース ID を制限するいくつかの条件が含まれています。完全なリストについては、AWS 「ウェブ ID フェデレーションで使用可能なキー」を参照してください。

ID プールによる基本またはクラシック認証では、適切な信頼ポリシー AWS STS がある場合、 で任意の IAM ロールを引き受けることができます。Amazon Cognito アイデンティティプールの IAM ロールは、サービスプリンシパル cognito-identity.amazonaws.com を信頼してロールを引き受けます。この設定では、リソースへの意図しないアクセスから IAM ロールを保護するには不十分です。このタイプのロールは、ロール信頼ポリシーに追加の条件を適用する必要があります。アイデンティティプールのロールを作成または変更するには、次の条件が 1 つ以上必要です。

cognito-identity.amazonaws.com:aud

ロールを 1 つ以上のアイデンティティプールからのオペレーションに制限します。Amazon Cognito は、アイデンティティプールトークンの aud クレーム内のソース ID プールを示します。

cognito-identity.amazonaws.com:amr

ロールを authenticated または unauthenticated (ゲスト) ユーザーに制限します。Amazon Cognito は、アイデンティティプールトークンの amr クレームの認証状態を示します。

cognito-identity.amazonaws.com:sub

UUID によってロールを 1 人以上のユーザーに制限します。この UUID は、アイデンティティプール内のユーザーのアイデンティティ ID です。この値は、ユーザーの元の ID プロバイダーの sub 値ではありません。Amazon Cognito は、アイデンティティプールトークンの sub クレームにこの UUID を示します。

拡張フロー認証では、IAM ロールがアイデンティティプールと同じ AWS アカウント にある必要がありますが、基本認証ではそうではありません。

クロスアカウントの IAM ロールを引き受ける Amazon Cognito アイデンティティプールには、その他の考慮事項が適用されます。これらのロールの信頼ポリシーは、cognito-identity.amazonaws.com サービスプリンシパルを受け入れ、かつ、特定の cognito-identity.amazonaws.com:aud 条件を含める必要があります。 AWS リソースへの意図しないアクセスを防ぐため、 aud条件キーは、 条件値の ID プールからユーザーにロールを制限します。

ID プールが ID に対して発行するトークンには、ID プール AWS アカウント の発信元に関する情報が含まれています。AssumeRoleWithWebIdentity API リクエストで ID プールトークンを提示すると、 は、発信元の ID プールが IAM ロール AWS アカウント と同じ にある AWS STS かどうかを確認します。がリクエストがクロスアカウントである AWS STS と判断した場合、ロール信頼ポリシーに aud条件があるかどうかをチェックします。ロール信頼ポリシーにそのような条件が存在しない場合、assume-role 呼び出しは失敗します。リクエストがクロスアカウントでない場合は、この制限を適用 AWS STS しません。ベストプラクティスとして、このタイプの条件をアイデンティティプールロールの信頼ポリシーに常に適用します。

その他の信頼ポリシー条件

ID プール間でのロールの再利用

複数の ID プール間でロールを再利用するには、ロールが共通のアクセス権限のセットを共有するため、次のように複数の ID プールを含めることができます。

"StringEquals": { "cognito-identity.amazonaws.com:aud": [ "us-east-1:12345678-abcd-abcd-abcd-123456790ab", "us-east-1:98765432-dcba-dcba-dcba-123456790ab" ] }
特定の ID へのアクセスの制限

特定のアプリユーザーに限定されたポリシーを作成するには、cognito-identity.amazonaws.com:sub の値を確認します。

"StringEquals": { "cognito-identity.amazonaws.com:aud": "us-east-1:12345678-abcd-abcd-abcd-123456790ab", "cognito-identity.amazonaws.com:sub": [ "us-east-1:12345678-1234-1234-1234-123456790ab", "us-east-1:98765432-1234-1234-1243-123456790ab" ] }
特定のプロバイダーへのアクセスの制限

特定のプロバイダー (おそらくはユーザー独自のログインプロバイダー) でログインしたユーザーに制限されたポリシーを作成するには、cognito-identity.amazonaws.com:amr の値を確認します。

"ForAnyValue:StringLike": { "cognito-identity.amazonaws.com:amr": "login.myprovider.myapp" }

たとえば、Facebook のみを信頼するアプリに、次の amr 句があるとします。

"ForAnyValue:StringLike": { "cognito-identity.amazonaws.com:amr": "graph.facebook.com" }

アクセスポリシー

ロールにアタッチするアクセス許可は、そのロールを引き受けるすべてのユーザーに適用されます。ユーザーのアクセスをパーティション化するには、ポリシー条件と変数を使用します。詳細については、「IAM ポリシーの要素: 変数とタグ」を参照してください。sub 条件を使用して、アクションをアクセスポリシーの Amazon Cognito アイデンティティ ID に制限できます。このオプションは注意して使用してください。特に、一貫したユーザー ID を持たない認証されていない ID には注意が必要です。Amazon Cognito を使用したウェブフェデレーションの IAM ポリシー変数の詳細については、AWS Identity and Access Management 「 ユーザーガイド」の「IAM と AWS STS 条件コンテキストキー」を参照してください。

セキュリティ保護を向上させるために、Amazon Cognito は GetCredentialsForIdentity を使用して、拡張フローで認証されていないユーザーを割り当てる認証情報にスコープダウンポリシーを適用します。スコープダウンポリシーは、認証されていないロールに適用する IAM ポリシーに インラインセッションポリシーAWS マネージドセッションポリシー を追加します。ロールの IAM ポリシーとセッションポリシーの両方でアクセスを許可する必要があるため、スコープダウンポリシーでは、次のリストに示すサービス以外のサービスへのユーザーアクセスが制限されます。

注記

基本 (クラシック) フローでは、独自の AssumeRoleWithWebIdentity API リクエストを作成し、そのリクエストにこれらの制限を適用できます。セキュリティのベストプラクティスとして、このスコープダウンポリシーを超えるアクセス許可を認証されていないユーザーに割り当てないでください。

また、Amazon Cognito は、認証されたユーザーと認証されていないユーザーが Amazon Cognito ID プールと Amazon Cognito Sync に API リクエストを実行できないようにします。ウェブ ID からのサービスアクセスに制限が課される AWS のサービス 場合もあります。

拡張フローでリクエストが成功すると、Amazon Cognito はバックグラウンドで AssumeRoleWithWebIdentity API リクエストを行います。このリクエストのパラメータとしては、Amazon Cognito に次のものが含まれます。

  1. ユーザーのアイデンティティ ID。

  2. ユーザーが引き受ける IAM ロールの ARN。

  3. インラインセッションポリシーを追加する policy パラメータ。

  4. Amazon CloudWatch で追加のアクセス許可を付与するAWS 管理ポリシーを値とする PolicyArns.member.N パラメータ。

認証されていないユーザーがアクセスできるサービス

拡張フローを使用すると、Amazon Cognito がユーザーセッションに適用するスコープダウンポリシーにより、次の表に記載されている以外のサービスを使用できなくなります。一部のサービスでは、特定のアクションのみが許可されます。

カテゴリ サービス

分析

Amazon Data Firehose

Amazon Managed Service for Apache Flink

アプリケーション統合

Amazon Simple Queue Service

AR とバーチャルリアリティ

Amazon Sumerian¹

ビジネスアプリケーション

Amazon Mobile Analytics

Amazon Simple Email Service

コンピューティング

AWS Lambda

暗号化と PKI

AWS Key Management Service 1

データベース

Amazon DynamoDB

Amazon SimpleDB

フロントエンドウェブおよびモバイル

AWS AppSync

Amazon Location Service

Amazon Simple Notification Service

Amazon Pinpoint

Amazon Location Service

ゲーム開発

Amazon GameLift

IoT

AWS IoT

機械学習

Amazon CodeWhisperer

Amazon Comprehend

Amazon Lex

Amazon Machine Learning

Amazon Personalize

Amazon Polly

Amazon Rekognition

Amazon SageMaker AI1

Amazon Textract¹

Amazon Transcribe

Amazon Translate

管理とガバナンス

Amazon CloudWatch

Amazon CloudWatch Logs

ネットワーキングとコンテンツ配信

Amazon API Gateway

セキュリティ、アイデンティティ、コンプライアンス

Amazon Cognito ユーザープール

ストレージ

Amazon Simple Storage Service

1 次の表の AWS のサービス について、インラインポリシーはアクションのサブセットを付与します。表には、それぞれで実行可能なアクションが表示されています。

AWS のサービス 認証されていない拡張フローユーザーの最大アクセス許可
AWS Key Management Service

Encrypt

Decrypt

ReEncryptTo

ReEncryptFrom

GenerateDataKey

GenerateDataKeyPair

GenerateDataKeyPair

GenerateDataKeyPairWithoutPlaintext

GenerateDataKeyWithoutPlaintext

Amazon SageMaker AI

InvokeEndpoint

Amazon Textract

DetectDocumentText

AnalyzeDocument

Amazon Sumerian

View*

Amazon Location Service

SearchPlaceIndex*

GetPlace

CalculateRoute*

*Geofence

*Geofences

*DevicePosition*

このリスト AWS のサービス 以外の へのアクセスを許可するには、ID プールで基本 (クラシック) 認証フローをアクティブ化します。認証されていないユーザーの IAM ロールに割り当てられたポリシーで許可されているNotAuthorizedExceptionエラー AWS のサービス が からユーザーに表示される場合は、そのサービスをユースケースから削除できるかどうかを評価します。できない場合は、基本フローに切り替えてください。

ゲストユーザー用のインラインセッションポリシー

Amazon Cognito はまず、IAM 認証情報のリクエストにインラインポリシーを適用します。インラインセッションポリシーでは、ユーザーの有効な権限に、以下のリストにある AWS のサービス 外部へのアクセスが含まれないように制限しています。また、ユーザーの IAM ロールに適用するポリシー AWS のサービス で、これらにアクセス許可を付与する必要があります。ロールを引き受けたセッションにおけるユーザーの有効なアクセス許可は、そのユーザーのロールに割り当てられたポリシーとセッションポリシーが交差したものです。詳細については、AWS Identity and Access Management ユーザーガイドの「セッションポリシー」を参照してください。

Amazon Cognito は、デフォルトで有効になっている  AWS リージョン  ユーザーのセッションに次のインラインポリシーを追加します。インラインポリシーおよびその他のセッションポリシーによる正味の効果の概要については、「認証されていないユーザーがアクセスできるサービス」を参照してください。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "cloudwatch:*", "logs:*", "dynamodb:*", "kinesis:*", "mobileanalytics:*", "s3:*", "ses:*", "sns:*", "sqs:*", "lambda:*", "machinelearning:*", "execute-api:*", "iot:*", "gamelift:*", "scs:*", "cognito-identity:*", "cognito-idp:*", "lex:*", "polly:*", "comprehend:*", "translate:*", "transcribe:*", "rekognition:*", "mobiletargeting:*", "firehose:*", "appsync:*", "personalize:*", "sagemaker:InvokeEndpoint", "cognito-sync:*", "sumerian:View*", "codewhisperer:*", "textract:DetectDocumentText", "textract:AnalyzeDocument", "sdb:*" ], "Resource": [ "*" ] } ] }

他のすべてのリージョンの場合、インラインスコープダウンポリシーには、次の Action ステートメントを除いて、デフォルトのリージョンにリストされているものがすべて含まれます。

"cognito-sync:*", "sumerian:View*", "codewhisperer:*", "textract:DetectDocumentText", "textract:AnalyzeDocument", "sdb:*"

ゲストの AWS マネージドセッションポリシー

Amazon Cognito は、認証されていないゲストの拡張フローセッションにセッションポリシーとして AWS 管理ポリシーも適用します。このポリシーは、ポリシー AmazonCognitoUnAuthedIdentitiesSessionPolicy を使用して、認証されていないユーザーのアクセス許可の範囲を制限します。

また、認証されていない IAM ロールに適用するポリシーでこのアクセス許可を付与する必要があります。ロールを引き受けたセッションにおけるユーザーの有効なアクセス許可は、そのユーザーのロールに割り当てられた IAM ポリシーとセッションポリシーが交差したものです。詳細については、AWS Identity and Access Management ユーザーガイドの「セッションポリシー」を参照してください。

この AWS 管理ポリシーおよびその他のセッションポリシーの正味の影響の概要については、「」を参照してください認証されていないユーザーがアクセスできるサービス

AmazonCognitoUnAuthedIdentitiesSessionPolicy 管理ポリシーには以下のアクセス許可が記載されています。

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "rum:PutRumEvents", "polly:*", "comprehend:*", "translate:*", "transcribe:*", "rekognition:*", "mobiletargeting:*", "firehose:*", "personalize:*", "sagemaker:InvokeEndpoint", "geo:GetMap*", "geo:SearchPlaceIndex*", "geo:GetPlace", "geo:CalculateRoute*", "geo:*Geofence", "geo:*Geofences", "geo:*DevicePosition*", "kms:Encrypt", "kms:Decrypt", "kms:ReEncryptTo", "kms:ReEncryptFrom", "kms:GenerateDataKey", "kms:GenerateDataKeyPair", "kms:GenerateDataKeyPairWithoutPlaintext", "kms:GenerateDataKeyWithoutPlaintext" ], "Resource": "*" }] }

アクセスポリシーの例

このセクションでは、特定のオペレーションの実行に必要な最小限のアクセス許可を付与する Amazon Cognito アクセスポリシーの例を示します。可能な場合は、ポリシー変数を使用して特定のアイデンティティ ID のアクセス権限をさらに制限できます。たとえば、${cognito-identity.amazonaws.com:sub} を使用します。詳細については、AWS モバイルブログで「Understanding Amazon Cognito Authentication Part 3: Roles and Policies」を参照してください。

注記

セキュリティのベストプラクティスとして、ポリシーには、ユーザーがタスクを実行するために必要なアクセス権限のみを含めてください。つまり、可能であれば必ずオブジェクトの個々の ID ごとにアクセスを設定するようにしてください。

ID に Amazon S3 内の単一のオブジェクトへの読み取りアクセスを許可する

次のアクセスポリシーは、特定の S3 バケットから 1 つのオブジェクトを取得するための読み取りアクセス権限を ID に付与します。

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "s3:GetObject" ], "Effect": "Allow", "Resource": ["arn:aws:s3:::amzn-s3-demo-bucket/assets/my_picture.jpg"] } ] }

ID に Amazon S3 の ID 固有のパスへの読み取りおよび書き込みアクセスを許可する

次のアクセスポリシーは、プレフィックスを ${cognito-identity.amazonaws.com:sub} 変数にマッピングすることで、S3 バケット内の特定のプレフィックス「folder」にアクセスする読み取りおよび書き込みアクセス権限を付与します。

このポリシーでは、${cognito-identity.amazonaws.com:sub} を使用して挿入された us-east-1:12345678-1234-1234-1234-123456790ab などの ID は、オブジェクトを取得し、arn:aws:s3:::amzn-s3-demo-bucket/us-east-1:12345678-1234-1234-1234-123456790ab に配置およびリストできます。ただし、この ID には arn:aws:s3:::amzn-s3-demo-bucket の他のオブジェクトへのアクセスは許可されません。

{ "Version": "2012-10-17", "Statement": [ { "Action": ["s3:ListBucket"], "Effect": "Allow", "Resource": ["arn:aws:s3:::amzn-s3-demo-bucket"], "Condition": {"StringLike": {"s3:prefix": ["${cognito-identity.amazonaws.com:sub}/*"]}} }, { "Action": [ "s3:GetObject", "s3:PutObject" ], "Effect": "Allow", "Resource": ["arn:aws:s3:::amzn-s3-demo-bucket/${cognito-identity.amazonaws.com:sub}/*"] } ] }

ID に Amazon DynamoDB への詳細に設定されたアクセスを割り当てる

次のアクセスポリシーは、Amazon Cognito 環境変数を使用して、Amazon DynamoDB リソースへの詳細に設定されたアクセスコントロールを行います。これらの変数は、アイデンティティ ID によって DynamoDB のアイテムへのアクセス権限を付与します。詳細については、Amazon DynamoDB デベロッパーガイドの「詳細に設定されたアクセスコントロールのための IAM ポリシー条件の使用」を参照してください。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "dynamodb:GetItem", "dynamodb:BatchGetItem", "dynamodb:Query", "dynamodb:PutItem", "dynamodb:UpdateItem", "dynamodb:DeleteItem", "dynamodb:BatchWriteItem" ], "Resource": [ "arn:aws:dynamodb:us-west-2:123456789012:table/MyTable" ], "Condition": { "ForAllValues:StringEquals": { "dynamodb:LeadingKeys": ["${cognito-identity.amazonaws.com:sub}"] } } } ] }

Lambda 関数を呼び出すためのアクセス権限を ID に与えます。

次のアクセスポリシーは、Lambda 関数を呼び出すアクセス権限を ID に付与します。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "lambda:InvokeFunction", "Resource": [ "arn:aws:lambda:us-west-2:123456789012:function:MyFunction" ] } ] }

Amazon Kinesis Data Stream へのレコードを発行するアクセス権限を ID に付与する

次のアクセスポリシーでは、ID が任意の Kinesis Data Streams で PutRecord オペレーションを使用することを許可します。これは、アカウント内のすべてのストリームにデータレコードを追加する必要があるユーザーに適用できます。詳細については、Amazon Kinesis Data Streams デベロッパーガイドの「IAM を使用して Amazon Kinesis Streams リソースへのアクセスを制御する」を参照してください。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "kinesis:PutRecord", "Resource": [ "arn:aws:kinesis:us-east-1:111122223333:stream/stream1" ] } ] }

ID に Amazon Cognito Sync ストアのデータへのアクセス権を付与する

以下のアクセスポリシーは、アイデンティティに Amazon Cognito Sync ストア内のデータのみに対するアクセス権限を付与します。

{ "Version": "2012-10-17", "Statement":[{ "Effect":"Allow", "Action":"cognito-sync:*", "Resource":["arn:aws:cognito-sync:us-east-1:123456789012:identitypool/${cognito-identity.amazonaws.com:aud}/identity/${cognito-identity.amazonaws.com:sub}/*"] }] }

ロールの信頼とアクセス権限

これらのロールが異なる点は、それらの信頼関係です。未認証ロールの信頼ポリシーの例を次に示します。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Federated": "cognito-identity.amazonaws.com" }, "Action": "sts:AssumeRoleWithWebIdentity", "Condition": { "StringEquals": { "cognito-identity.amazonaws.com:aud": "us-east-1:12345678-corner-cafe-123456790ab" }, "ForAnyValue:StringLike": { "cognito-identity.amazonaws.com:amr": "unauthenticated" } } } ] }

このポリシーは、cognito-identity.amazonaws.com (OpenID Connect トークンの発行者) のフェデレーティッドユーザーに、このロールを引き受ける許可を与えます。さらに、ポリシーでは、ID プールに一致させるためにトークンの aud が制限されます (この場合は ID プール ID)。最後に、このポリシーは、Amazon Cognito GetOpenIdToken API オペレーションによって発行されたトークンの複数の値からなる amr クレームの配列メンバーの 1 つが unauthenticated 値を含みます

Amazon Cognito がトークンを作成すると、トークンの amrunauthenticated またはauthenticated のいずれかに設定します。amrauthenticated の場合、トークンには、認証中に使用されるすべてのプロバイダーが含まれます。これにより、amr 条件を次のように変更するだけで、Facebook 経由でログインしたユーザーのみを信頼するロールを作成できます。

"ForAnyValue:StringLike": { "cognito-identity.amazonaws.com:amr": "graph.facebook.com" }

ロールで信頼関係を変更するときや、ID プール間でロールの使用を試みるときは注意が必要です。ID プールを正しく信頼するようにロールが設定されていない場合は、STS の結果から次のような例外が表示されます。

AccessDenied -- Not authorized to perform sts:AssumeRoleWithWebIdentity

このメッセージが表示された場合は、ID プールと認証タイプに適切なロールがあることを確認します。

プライバシーサイト規約Cookie の設定
© 2025, Amazon Web Services, Inc. or its affiliates.All rights reserved.