オプション 2: アプリケーションは、信頼ポリシーが許可するロールのみを引き受けることができます - AWS 規範ガイダンス

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

オプション 2: アプリケーションは、信頼ポリシーが許可するロールのみを引き受けることができます

このシナリオでは、2 つの証明書が AWS Certificate Manager (ACM) からプロビジョニング AWS Private Certificate Authority され、 AWS リソースへのアクセスを必要とするアプリケーションと共有されています。アプリケーション 1ロール 1 のみを引き受け、アプリケーション 2ロール 2 のみを引き受けることができます。ロール信頼ポリシーでは、証明書のサブジェクトフィールドを条件として設定します。これらの条件により、アプリケーションは特定のロールのみを引き受けることができます。ロールのアクセス許可により、アプリケーション 1 のみがバケット 1 にアクセスでき、アプリケーション 2 のみがバケット 2 にアクセスできます。次の図は、各アプリケーションが持つアクセスを示しています。

異なる証明書を使用し、特定のロールのみを引き受けることができるアプリケーション。

このオプションでは、特定の証明書属性が満たされたAssumeRole場合にのみ を許可するように信頼ポリシーを設定します。サンプルロールの信頼ポリシーは、ロール 1 とロール 2 で異なる特定の証明書共通名 (CN) を要求するように Conditionセクションを設定する方法を示しています。にはトラストアンカー関係があるため、各アプリケーション IAM Roles Anywhere は特定のロールを引き受けることができます AWS Private CA。このアプローチは、アプリケーションがターゲットプロファイルにリンクされたロールを引き受けることができないため、ロールとデータへの不正アクセスを防ぐのに役立ちます。たとえば、ビジネスデータを異なるバケットに分離し、それらのバケットの 1 つだけへのアクセスを許可するようにロールを設定し、信頼ポリシーで証明書ベースのアクセスコントロールを使用して、アプリケーションが引き受けることができるロールを定義できます。

ロール 1 の次の信頼ポリシーのサンプルには、証明書名が application-1.comで、信頼アンカー Amazon リソースネーム (ARN) が一致する場合にのみロールの引き受けを許可する条件があります。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": "rolesanywhere.amazonaws.com" }, "Action": [ "sts:AssumeRole", "sts:SetSourceIdentity", "sts:TagSession" ], "Condition": { "StringEquals": { "aws:PrincipalTag/x509Subject/CN": "application-1.com" }, "ArnEquals": { "aws:SourceArn": [ "arn:aws:rolesanywhere:<region>:<account-ID>:trust-anchor/<TA_ID>" ] } } } ] }

ロール 2 の次の信頼ポリシーのサンプルには、証明書名が application-2.comであり、トラストアンカー ARN が一致する場合にのみロールの引き受けを許可する条件があります。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": "rolesanywhere.amazonaws.com" }, "Action": [ "sts:AssumeRole", "sts:SetSourceIdentity", "sts:TagSession" ], "Condition": { "StringEquals": { "aws:PrincipalTag/x509Subject/CN": "application-2.com" }, "ArnEquals": { "aws:SourceArn": [ "arn:aws:rolesanywhere:<region>:<account-ID>:trust-anchor/<TA_ID>" ] } } } ] }

ロールの信頼ポリシーと、これらのサンプルを変更する方法の詳細については、 IAM Roles Anywhere ドキュメントの「信頼ポリシー」を参照してください。

アプリケーション 1 アプリケーション 2 のサンプルロールとプロファイルポリシーは、このガイドの付録: サンプルプロファイルとロールポリシーのセクションに含まれています。