クロスアカウントロール引き受けのIAMポリシー

ユーザーやサービスが別のAWSアカウントのロールを引き受けることを許可するIAMポリシーを作成します。クロスアカウントアクセスパターンに不可欠です。

Security & Encryption

詳細な説明

STS AssumeRoleポリシー

AWSでのクロスアカウントアクセスはロールの引き受けを通じて実装されます。アカウントAがロールを引き受ける権限を付与し、アカウントBのロール信頼ポリシーがアカウントAの引き受けを許可します。このポリシーはアカウントAに配置します。

ポリシーJSON

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "AllowAssumeRole",
      "Effect": "Allow",
      "Action": "sts:AssumeRole",
      "Resource": [
        "arn:aws:iam::987654321098:role/cross-account-reader",
        "arn:aws:iam::987654321098:role/cross-account-deployer"
      ]
    }
  ]
}

クロスアカウントアクセスの仕組み

  1. このポリシー(アカウントA内)がプリンシパルにsts:AssumeRoleの呼び出しを許可します。
  2. ターゲットロールの信頼ポリシー(アカウントB内)もアカウントAの引き受けを許可する必要があります。
  3. 両方のポリシーが設置されている必要があり、どちらか一方だけでは不十分です。

MFA要件

機密性の高いクロスアカウントロールには、MFA条件を追加します。

セッション期間

ロールを引き受ける際、セッション期間(1時間〜12時間、ロールの最大セッション期間設定による)を指定できます。一時認証情報はこの期間後に期限切れになります。

ユースケース

複数のAWSアカウントにデプロイするCI/CDパイプライン、アカウント間でデータを集約するモニタリングツール、AWS Organizationのメンバーアカウントのリソースをスキャンするセキュリティ監査ツール。

試してみる — AWS IAM Policy Generator

フルツールを開く