AWS Organizations SCPがリソースベースのポリシーには影響しないことを確認
2021/07/22
AWS Organizations SCPで許可ポリシーの設定をし継承の関係を確認するで設定したAWSアカウントsakenamidaで確認しました。
このAllowTestポリシーがアタッチされているOUにあるAWSアカウントです。
検証開始時点では、IAM, EC2, S3に対してフルアクセスの権限があります。
S3バケットポリシーでクロスアカウントアクセスしているロールにバケットとオブジェクトへのフルアクセスを設定したあとに、OUのSCPからS3フルアクセスを外します。
もう一つ、念のため、OUのSCPにS3 Denyのステートメントも追加して確認します。
目次
S3バケットポリシーの設定
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::123456789012:role/OrgRole" }, "Action": "s3:*", "Resource": [ "arn:aws:s3:::bucketname/*", "arn:aws:s3:::bucketname" ] } ] } |
sakenamidaアカウントのS3バケットに上記のようなバケットポリシーを設定しました。
OrgRoleはスイッチロールしているIAMロールです。
OUのSCPからS3フルアクセスを外して確認
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
{ "Version": "2012-10-17", "Statement": [ { "Sid": "Statement1", "Effect": "Allow", "Action": [ "EC2:*", "IAM:*" ], "Resource": "*" } ] } |
OUのSCP AllowTestを上記のようにS3フルアクセスを外しました。
スイッチロールしてsakenamidaアカウントにクロスアカウントアクセスしました。
拒否されました。
arn:aws:iam::123456789012:role/OrgRoleは、対象アカウントのロールだったのでロールがSCPの影響を受けたということでしょうね。
組織外のアカウントユーザーをバケットポリシーで設定して確認してみました。
バケットにオブジェクトのアップロードなどできることが確認できました。
SCPはアカウント所有のバケットのバケットポリシーには影響しませんでした。
OUのSCPにS3 Denyのステートメントを追加して確認
{
“Version”: “2012-10-17”,
“Statement”: [
{
“Effect”: “Allow”,
“Action”: [
“EC2:“,
“IAM:”
],
“Resource”: “”
},
{
“Effect”: “Deny”,
“Action”: [
“S3:”
],
“Resource”: [
“arn:aws:s3:::bucketname/*”,
“arn:aws:s3:::bucketname”
]
}
]
}
OUのSCPに対象バケットへのS3アクションを拒否するステートメントを追加しました。
バケットにオブジェクトのアップロードなどできることが確認できました。
やはりSCPはアカウント所有のバケットのバケットポリシーには影響しませんでした。
最後までお読みいただきましてありがとうございました!
「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。
「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。
「AWS認定資格試験テキスト AWS認定AIプラクティショナー」という本を書きました。
「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。
「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。
「AWSではじめるLinux入門ガイド」という本を書きました。
開発ベンダー5年、ユーザ企業システム部門通算9年、ITインストラクター5年目でプロトタイプビルダーもやりだしたSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。
このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。
このブログは経験したことなどの共有を目的としており、手順や結果などを保証するものではありません。
ご参考にされる際は、読者様自身のご判断にてご対応をお願いいたします。
また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。
関連記事
-
-
AWS Systems Manager Fleet Manager Windows RDP Connectを試してみました
AWS Systems Manager Fleet Manager Window …
-
-
AWS Snowファミリーのジョブ作成画面を確認
使わないのですが、画面を見ておきたかったので確認しました。 Snowファミリージ …
-
-
SageMaker AI StudioでJupyterLab スペースを作成しJupyterLab を起動、S3拡張のインストール
JupyterLab ユーザーガイドとJupyterLab 拡張機能を参照して、 …
-
-
RDSの証明書をrds-ca-2019に更新しました
クライアント接続で署名書使ってないので、必要ないのですが、古いままなのも気持ち悪 …
-
-
AWS LambdaをVPC設定したときに「The provided execution role does not have permissions to call CreateNetworkInterface on EC2」
The provided execution role does not hav …
-
-
Amazon Keyspacesのキースペースを作成してみました
Amazon Keyspaces(Apache Cassandra互換のマネージ …
-
-
AWS Service Catalogチュートリアル
AWS Service Catalog 開始方法のチュートリアルにそってみました …
-
-
Developers Summit 2018 「AWSのフルマネージドな環境でCI/CDをやってみよう!AWS Cloud9からAWS Fargateへの継続的デプロイをご紹介」を聞きました
※写真は展示のAmazon Echoです。 以下は、思ったことや気になったことを …
-
-
AWS Cost Explorerの設定で「EC2リソースの推奨事項を受け取る」を有効にしました
「EC2リソースの推奨事項を受け取る」という機能がAWS Cost Explor …
-
-
EKS「現在の IAM プリンシパルは、このクラスター上の Kubernetes オブジェクトにアクセスできません」
マネジメントコンソールでクラスターのオブジェクトを見ようと、リソースの名前空間や …

