ablog

不器用で落着きのない技術者のメモ

同じ Organization のメンバーアカウントからのアクセスを許可する S3 バケットポリシー

Organization の全てのメンバーアカウントや特定の OU からのみのアクセスを許可する S3 バケットポリシー。

S3 バケットポリシー例

  • 同じ Organization のメンバーアカウントからのアクセスを許可する
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "Allow-Access-From-Same-Organization",
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::123456789012:root"
            },
            "Action": "*",
            "Resource": [
                "arn:aws:s3:::ablog",
                "arn:aws:s3:::ablog/*"
            ],
            "Condition": {
                "StringEquals": {
                    "aws:PrincipalOrgID": "o-a********y"
                }
            }
        }
    ]
}
  • 特定の Organization Unit からのアクセスを許可する
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "Allow-Access-From-Specific-OU",
            "Effect": "Allow",
            "Principal": {
                "AWS": "*"
            },
            "Action": "*",
            "Resource": [
                "arn:aws:s3:::ablog",
                "arn:aws:s3:::ablog/*"
            ],
            "Condition": {
                "ForAnyValue:StringLike": {
                    "aws:PrincipalOrgPaths": "o-abcdefghiy/r-wab0/ou-wabcdefghijkb/*"
                }
            }
        }
    ]
}

補足

Organization ID の確認方法
  • マネジメントコンソールで [マイ組織]-[設定] を選択、組織IDの "o-******"

f:id:yohei-a:20200911131027p:plain:w400

  • [組織ID]を確認

f:id:yohei-a:20200911131024p:plain:w400

ルートIDの確認方法
  • マネジメントコンソールで [IAM]-[組織アクティビティ] を選択、[詳細]-[ARN]の "r-*****"

f:id:yohei-a:20200911131937p:plain