AWS Organizations SCPで許可ポリシーの設定をし継承の関係を確認する
2021/08/07
ユーザーガイドのサービスコントロールポリシーの例にはDeny(拒否)ばっかりでAllow(許可)の例がないので、一応試しておきます。
SCP 構文にも記載があるように、Allow(許可)では、NotAction、Conditionが使えません。
Resourceも”*”のみです。
これに違反すると保存時に「The provided policy document does not meet the requirements of the specified policy type.」となりました。
## 環境
root->sandbox->Sandbox-nestに以下のSCPをアタッチしました。
この検証でSCPはEC2, S3, IAMを許可したAllowTestというSCPを作成しました。
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
{ "Version": "2012-10-17", "Statement": [ { "Sid": "Statement1", "Effect": "Allow", "Action": [ "EC2:*", "S3:*", "IAM:*" ], "Resource": "*" } ] } |
目次
OUのSCP継承を確認する
rootにはすべてを許可するFullAWSAccessというAWS管理SCPがアタッチされています。
配下のOUに継承されています。
|
1 2 3 4 5 6 7 8 9 10 11 |
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "*", "Resource": "*" } ] } |
sandboxには、IAMだけを許可するIAMFullをアタッチして、Sandbox-nestに継承しています。
|
1 2 3 4 5 6 7 8 9 10 11 12 |
{ "Version": "2012-10-17", "Statement": [ { "Sid": "Statement1", "Effect": "Allow", "Action": "IAM:*", "Resource": "*" } ] } |
Sandbox-nestに上記のAllowTestをアタッチして、sakenamidaアカウントを子として登録しています。
sakenamidaアカウントのIAMロールOrgRoleにはAWS管理ポリシーAdministraotrAccessを設定しています。
スイッチロールしてsakenamidaアカウントにクロスアカウントアクセスしてみます。
IAM以外はすべて拒否されました。
sandboxからの継承により、配下のOUではIAMしか許可されなくなったしまったのですね。
ありそうな継承を確認する
継承はどんどん権限が狭くなるほうが実際にありそうですね。
このような構成に変えました。
sandboxにアタッチしたIAM-S3-EC2-RDSポリシーは名前どおり、IAM, S3, EC2, RDSにフルアクセス権限を追加しました。
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
{ "Version": "2012-10-17", "Statement": [ { "Sid": "Statement1", "Effect": "Allow", "Action": [ "EC2:*", "S3:*", "IAM:*", "RDS:*", ], "Resource": "*" } ] } |
下にいくほど権限が絞り込まれていきます。
IAMロールは面倒なのでAdministrtorAccessのままです。
スイッチロールしてsakenamidaアカウントにクロスアカウントアクセスしてみます。
S3にアクセスできました。
RDSにはアクセスできませんでした。
想定どおりでした。
最後までお読みいただきましてありがとうございました!
「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。
「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。
「AWS認定資格試験テキスト AWS認定AIプラクティショナー」という本を書きました。
「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。
「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。
「AWSではじめるLinux入門ガイド」という本を書きました。
開発ベンダー5年、ユーザ企業システム部門通算9年、ITインストラクター5年目でプロトタイプビルダーもやりだしたSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。
このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。
このブログは経験したことなどの共有を目的としており、手順や結果などを保証するものではありません。
ご参考にされる際は、読者様自身のご判断にてご対応をお願いいたします。
また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。
関連記事
-
-
AWS Snowファミリーのジョブ作成画面を確認
使わないのですが、画面を見ておきたかったので確認しました。 Snowファミリージ …
-
-
CloudTrailイベントのコストしか発生していないリージョンのコスト発生源を調査しました
調査のきっかけ ふと検証用AWSアカウントのCostExplorerを見てました …
-
-
AWS Database Migration Service(DMS)チュートリアル
公式ユーザーガイドのAWS Database Migration Service …
-
-
Amazon SESでメール受信
Amazon SES(Simple Email Service)にメールドメイン …
-
-
ブラウザからJavaScript SDKを使ってAmazon S3 への写真のアップロードチュートリアルをやってみました
ブラウザから Amazon S3 への写真のアップロードをやってみました。 HT …
-
-
IAMセッションポリシーの利用(GetFederationToken)
GetFederationTokenでのセッションポリシーは、呼び出し元のIAM …
-
-
Amazon Linux 2023、T4Gインスタンス、PHP8にWordPressを移行しました
ブログをAmazon Linux 2からAmazon Linux 2023に移行 …
-
-
SCPが影響しないサービスにリンクされたロールにEC2が引き受けるIAMロールは含まれないことを確認
ドキュメントで確認 サービスコントロールポリシーのユーザーガイドには、「SCPは …
-
-
S3バケットポリシーですべてDenyにしてしまったらルートユーザーの出番
特定のConditionsを指定して、それ以外はすべて拒否するS3バケットポリシ …
-
-
API GatewayをトリガーにしたときのLambdaリソースベースポリシー
先日、SwaggerからAPI Gatewayを作ったときに、API Gatew …









