記事ディレクトリ
1. 実験枠組み図
この実験では、指定された AWS アカウントは別の AWS アカウントのリソース (S3 リソースなど) へのアクセスを許可され、他の AWS アカウントはそのリソースにアクセスできなくなります。
2. 実験プロセスの説明
-
アカウント A に S3 バケットを作成する
xybaws-account-access-s3
-
アカウント A で S3 バケット アクセス ポリシーを作成する
xybaws_cross_account_access_s3_policy
-
アカウント A で開発アカウントを信頼するロールを作成し、S3 アクセス ポリシーを割り当てます。
xybaws_cross_account_access_s3_role
-
アカウント B のユーザーにインライン ポリシーを追加して、ユーザーがアカウント A のロールを sts:AssuneRole できるようにします。
-
アカウント B のロールを切り替えて、アカウント A の S3 バケットにアクセスします
3. 実験実証プロセス
1. アカウント A に S3 バケットを作成します
バケットの作成
- 名前:xybaws-account-access-s3
バケットの作成
- バケット名: xybaws_account_access_s3
- AWS リージョン: アジアパシフィック (東京) ap-northeast-1
- タグ: 名前 | xybaws_account_access_s3
画像を
xybaws_account_access_s3
バケットにアップロードします。
2. アカウント A で S3 バケット アクセス ポリシーを作成します
IAM 管理コンソールに移動します。バケットを作成します。
- 名前:
xybaws_cross_account_access_s3_policy
- このポリシーにより、S3 へのアクセスが許可され、すべての S3 操作が許可されます。
表示して作成します。ポリシーの詳細。
- 戦略名:
xyb_cross_account_access_s3_policy
- ラベル:
Name | xyb_cross_account_access_s3_policy
このポリシーの詳細を表示します。
以下は、S3 バケットからアクセスするためにポリシーが作成される JSON 形式です。
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": "s3:*",
"Resource": "*"
}
]
}
3. 開発アカウントを信頼するアカウント A にロールを作成します
导航至
IAM—角色
,选择创建角色
。
- AWS アカウント:
另一个AWS账户
権限ポリシーを追加します。
- xybaws_cross_account_access_s3_policy
ロール名の作成:
xybaws_cross_account_s3_role
役割の詳細を表示します。
4. アカウント B のユーザーにインライン ポリシーを追加します
アカウント B の AWS 管理コンソールにログインし、IAM に移動して、インライン ポリシーを作成します。
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "sts:AssumeRole",
"Resource": "arn:aws:iam::540852350692:role/xybaws_cross_account_access_s3_role"
}
]
}
5. アカウント B のロールを切り替えて、アカウント A の S3 リソースにアクセスします。
アカウント B のロールを切り替えて、運用アカウントの S3 バケットにアクセスします
- アカウント:
账户A的ID号
- ロール: xybaws_cross_account_access_s3_role
- 表示名: prod-xybaws
4. 実験概要
この時点で、AWS アカウント間のアクセス承認リソース アクセスの実験が完了しました。