IAMで作成したユーザーでAWS Management Consoleにログインする方法は、IAMで作成したアカウントでManagement Consoleにログインするまで(T_TANAKAさんのブログ)で詳しく説明されてますが、IAMを扱うツールがPHPだったため、以前にIAM Command Line Toolkitを使ってELBで利用したSSL証明書の確認で紹介したIAM Command Line Toolkitを利用した方法を試してみました。
IAMの導入に関して、Windows環境ではありますが、
IAM Command Line Toolkitを使ってELBで利用したSSL証明書の確認で紹介しています。
今回はMac環境での実行ですが、JAVA_HOMEとAWS_IAM_HOMEの設定も含め
やり方はほとんど同じです。
まずは、ユーザー(suzuki)の作成から行ってみます。
$ ./iam-usercreate --aws-credential-file credentials.txt > -u suzuki
次に、パスワードの設定です。
$ ./iam-useraddloginprofile --aws-credential-file credentials.txt > -u suzuki > -p xxxxxxxx
この状態で、下記のURLにアクセスするとIAMユーザー用のログイン画面が表示されます。
(000000000000はAWSのアカウント番号です)
https://000000000000.signin.aws.amazon.com/console/s3
ログインすると下記のようにS3のコンソールが表示されますが、
ポリシーが設定されていないので、何も出来ない状態です。
ということで、S3を利用出来るように設定してみます。
ポリシーの設定は、下記コマンドで可能です。
$ ./iam-useraddpolicy --aws-credential-file credentials.txt > -u suzuki > -p test001 > -a s3:* > -e Allow > -r arn:aws:s3:::*
上記はS3に対するすべてのアクションをS3のすべてのリソースに対して許可しています。
(AWS Policy Generatorを利用すると、このあたりも簡単に作成できます。)
この状態で、再度S3のコンソールを確認すると、
下記のように、いつもの利用出来る状態が確認できます。
次は、S3のバケットやフォルダ単位でのアクセスコントロールを試してみます。