1. はじめに
2022年3月26日にヤマムギ様主催にて開催されたヤマムギ vol.28 AWS認定試験テキストSAP本のデモ(IAMロール、クロスアカウントアクセス)でのAWS学習内容について、自分への備忘録としてまとめてみました。ご参考になれば幸いです。
2. 学んだ内容
- IAMロールの作成
- コンソールでクロスアカウントアクセス
- CLIでクロスアカウントアクセス
- SDK(Python boto3)でクロスアカウントアクセス
- AWS SSOでクロスアカウントアクセス
3. 学習サイト
4. 参考サイト
- Twitterヤマムギ ハッシュタグ #yamamugi
- YouTubeヤマムギ
- AWS複数アカウントのリソースをLambda(Python)から一括操作したくて
- AWS CLIを使用したIAMロールの引き受けコマンドのメモ
- AWS SSOのIDソースをAD Connectorにしました
- Active Directory認証でAWSマネジメントコンソールにSSO
5. ハンズオンで得た豆知識
- 2つのAWSアカウントを用意する(アルファアカウント、ベータアカウント)
- アルファアカウントにはIAMユーザを用意
- ベータアカウントにはIAMユーザを用意せず、AssumeRoleでアクセスする
- AWS Single Sign-Onを用いるとクロスアクセスを簡単に実現できる
- IDソースの選択肢は3つある
- AWS CloudShell
// AWS CloudShellでのコマンド
$ role_credentials=$(aws sts assume-role --role-arn "arn:aws:iam::056922243809:role/S3ReadOnly" --role-session-name yamashita)
$ export AWS_ACCESS_KEY_ID=$(echo $role_credentials | jq -r '.Credentials.AccessKeyId')
$ export AWS_SECRET_ACCESS_KEY=$(echo $role_credentials | jq -r '.Credentials.SecretAccessKey')
$ export AWS_SESSION_TOKEN=$(echo $role_credentials | jq -r '.Credentials.SessionToken')
// 確認コマンド
$ aws sts get-caller-identity
// 確認コマンド
$ aws s3 ls
// 環境変数を開放すると元のアカウントに戻る
$ unset AWS_ACCESS_KEY_ID AWS_SECRET_ACCESS_KEY AWS_SESSION_TOKEN
6. おわりに
AWS学習の参考になれば幸いです。
ハンズオン開催してくださいましたヤマムギ様、感謝いたします。
2022/03/26 NISHIZONO Takahiro