AWSともっと仲良くなるためにAWSリソースをCLIで作成できるように練習してみる。
何かやだなーってところは適当にマスクする。
今回はIAM周りの設定から。
とりあえずヘルプ
必要なコマンドを探すためヘルプを表示
$ aws iam help
無駄に名前だけいっぱい出てきた。。リファレンス見た方がよい。
IAMユーザの作成
それっぽいコマンドがあったのでたたいてみる。
$ aws iam create-user test-user
usage: aws [options] <command> <subcommand> [<subcommand> ...] [parameters]
To see help text, you can run:
aws help
aws <command> help
aws <command> <subcommand> help
aws.exe: error: the following arguments are required: --user-name
怒られた…もう一度再挑戦
$ aws iam create-user --user-name test-user
無事作成完了
access-keyの発行
それっぽくアクセスキーも発行してみる。
$ aws iam create-access-key --user-name test-user
おー!作成できた。
IAMポリシーの作成
ポリシーの作成にも挑戦
え、ちょっと待って。
引数どーすんの?って時はリファレンスを確認。
読み込ませるjsonファイルはこちら(IAMReadOnlyAccessをコピー)
vi policy.json
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"iam:GenerateCredentialReport",
"iam:GenerateServiceLastAccessedDetails",
"iam:Get*",
"iam:List*",
"iam:SimulateCustomPolicy",
"iam:SimulatePrincipalPolicy"
],
"Resource": "*"
}
]
}
ポリシーを作成
$ aws iam create-policy --policy-name test-user --policy-document file://policy.json
作成したポリシーをアタッチする。
$ aws iam attach-user-policy --user-name test-user --policy-arn arn:aws:iam::************:policy/test-user
アタッチされたポリシーの確認
$ aws iam list-attached-user-policies --user-name test-user
あんがい出来るやん。
後始末
アクセスキーID確認
$ aws iam list-access-keys --user-name test-user
アクセスキー削除
⇒ 違うユーザから削除する場合は--user-name
が必要みたい。
$ aws iam delete-access-key --user-name test-user --access-key-id *************
ポリシーのデタッチ
$ aws iam detach-user-policy --user-name test-user --policy-arn arn:aws:iam::************:policy/test-user
ユーザ削除
$ aws iam delete-user --user-name test-user
ポリシーの検索
$ aws iam list-policies --query 'Policies[?PolicyName==`test-user`]'
ポリシーの削除
aws iam delete-policy --policy-arn arn:aws:iam::************:policy/test-user
感想
- 思ったより簡単だった
- 情報出力の際は
--query
がだいぶ役に立つっポイ - shellscript活用すればだいぶ業務圧縮できるんでないの?
- Jenkinsとかと組み合わせるとすっごい活躍してくれそう
めちゃめちゃ便利だったので、今後もっと極めていきたいと思います。