Upload
junya-ogura
View
23
Download
2
Embed Size (px)
DESCRIPTION
Citation preview
IAMのはじめかた
第5回 AWS User Group-Japan勉強会2010年10月28日
小倉純也 (@junya)http://cloudworks.jp/
株式会社サーバーワークス
Thursday, October 28, 2010
読み方
http://twitter.com/#!/KenTamagawa/status/25887602080
Thursday, October 28, 2010
• 現在、Preview Beta中
• グループ、ユーザーに対するポリシーベースの権限管理
• API、リソース、各種条件でのアクセス制御
• ユーザー毎のアクセスキー、証明書管理
• ELB用のサーバー証明書管理
AWS IAMhttp://aws.amazon.com/iam/
Thursday, October 28, 2010
構造
グループユーザー
AWSアカウント
•アクセスキー•証明書
Thursday, October 28, 2010
上限AWSアカウント毎のグループ 100グループ
AWSアカウント毎のユーザー 5,000ユーザー
AWSアカウント毎のサーバー証明書 10個
ユーザーが属するグループ 10グループ
ユーザー毎のアクセスキー 2個
ユーザー毎の証明書 2個
Thursday, October 28, 2010
• CLI• IAM Command Line Toolkit
• GUI• CloudBerry S3 Explorer 2.4 PRO ($39.99)
• Web• Cloudworks (Free)• Ylastic ($25/mo)
IAM APIが操作できるツール
Thursday, October 28, 2010
•AWS Management Console• IAM APIの操作•IAMユーザーのログイン
ベータ終了後にサポート予定
Thursday, October 28, 2010
IAM Command Line Toolkitのセットアップ
Thursday, October 28, 2010
Developer Toolsからダウンロードして展開
$ unzip IAMCli.zip
$ export JAVA_HOME=/path/to/java_home$ export AWS_IAM_HOME=/path/to/IAMCli-1.1.0$ export PATH=$AWS_IAM_HOME/bin:$PATH
$ echo 'AWSAccessKeyId=***' > account-key$ echo 'AWSSecretKey=***' >> account-key$ chmod 600 account-key$ export AWS_CREDENTIAL_FILE=account-key
Thursday, October 28, 2010
ユーザーの作成
Thursday, October 28, 2010
iam-usercreate$ iam-usercreate -u bob -kAKIAEEX5JT45QCZA7MSOJp7hKRgZ+GPEoVRrdvuufYh4D23GnQLTPvthvHbN
$ iam-userlistbypatharn:aws:iam::111122223333:user/bob
Thursday, October 28, 2010
証明書(Signing Certificate)のアップロード
$ openssl genrsa -out bob.pk.pem 1024$ openssl req -new -x509 \ -out bob.cert.pem \ -key bob.pk.pem \ -days 365
$ iam-useraddcert -f bob.cert.pem -u bob
$ iam-userlistcerts -u bobNDUQVOYX6OVFIXGS2VERXMGNRDWE6PU4Active
Thursday, October 28, 2010
デフォルトではすべての操作が禁止
bob@ $ ec2-describe-instancesClient.UnauthorizedOperation: You are not authorized to perform this operation.
Thursday, October 28, 2010
使用例
Thursday, October 28, 2010
操作ミスによる被害を防止開発者が誤ってサーバーインスタンスを削除…。
Thursday, October 28, 2010
ユーザーポリシーの追加$ iam-useraddpolicy -u bob \ -p Bob_Instance_Policy \ -e Allow \ -a ec2:DescribeInstances \ -a ec2:StartInstances \ -a ec2:StopInstances \ -r '*'
ユーザーbobに対して、全リソースに対する3つのEC2 API呼び出しを許可。
Thursday, October 28, 2010
ユーザーポリシーの確認$ iam-userlistpolicies -u bob \ -p Bob_Instance_Policy
{"Version":"2008-10-17","Statement":[{"Effect":"Allow","Action":["ec2:DescribeInstances","ec2:StartInstances","ec2:StopInstances"],"Resource":["*"]}]}
Thursday, October 28, 2010
Bobの操作
bob@ $ ec2-describe-instances(インスタンス情報が表示される)
bob@ $ ec2-terminate-instances i-00000001Client.UnauthorizedOperation: You are not authorized to perform this operation.
Thursday, October 28, 2010
社外からの操作を禁止
Thursday, October 28, 2010
$ vi policy.json{ "Statement": [ { "Effect": "Allow", "Action": "ec2:*", "Resource": "*", "Condition": { "IpAddress": { "aws:SourceIp": [ "10.1.2.0/24", "10.1.3.0/24" ] } } } ]}
Thursday, October 28, 2010
$ iam-useruploadpolicy -u bob \ -p Bob_Instance_Policy \ -f policy.json
エラーが発生した場合はJSONLintなどで書式をチェックしてみる。http://www.jsonlint.com/
Thursday, October 28, 2010
社外にいるBob
bob@other $ ec2-describe-instancesClient.UnauthorizedOperation: You are not authorized to perform this operation.
Thursday, October 28, 2010
特定リソースのみアクセスを許可バグやエラーによる被害拡大を防ぐ。
Thursday, October 28, 2010
{ "Statement": [ { "Effect": "Allow", "Action": "s3:*", "Resource": ["arn:aws:s3:::GeneratedPDF"] } ]}
Thursday, October 28, 2010
アクセスキーの無効化アクセスキー漏洩時の対策。
Thursday, October 28, 2010
$ iam-userlistkeys -u bobAKIAEEX5JT45QCZA7MSOActive
$ iam-usermodkey -u bob \ -k AKIAEEX5JT45QCZA7MSO \ -s Inactive
$ iam-userlistkeys -u bob AKIAEEX5JT45QCZA7MSOInactive
Thursday, October 28, 2010
各AWSプロダクトの対応プロダクト アクション リソース
IAM YES YESEC2 YESRDS YESS3 YES YES
SimpleDB YES YESSNS YES YESSQS YESVPC YES
Auto Scaling YESELB YES
Thursday, October 28, 2010
参考CLIコマンドの説明 - AWS Identity and Access Managementhttp://docs.amazonwebservices.com/IAM/latest/CLIReference/Commands.html
チュートリアル - AWS IAM Getting Started Guidehttp://docs.amazonwebservices.com/IAM/latest/GettingStartedGuide/
ユーザーとグループについて - Working with Users and Groupshttp://docs.amazonwebservices.com/IAM/latest/UserGuide/index.html?Using_WorkingWithGroupsAndUsers.html
ポリシーのサンプル - Working with Users and Groupshttp://docs.amazonwebservices.com/IAM/latest/UserGuide/ExampleIAMPolicies.html
EC2との連携 - Working with Users and Groupshttp://docs.amazonwebservices.com/IAM/latest/UserGuide/UsingWithEC2.html
Thursday, October 28, 2010
スライドhttp://slidesha.re/bxNw4E
ご清聴ありがとうございました
Cloudworkshttp://cloudworks.jp/
Thursday, October 28, 2010