1.1. IAMポリシの作成 (handson-Cloud9EnvironmentOwner-policy)¶
作業の目的 [why]¶
マネジメントコンソールでIAMポリシ"handson-Cloud9EnvironmentOwner-policy"を作成します。
完了条件/事前条件 [設計者用情報]
完了条件 [after]
主処理は、以下を満たしたときに成功したものとします。
- 完了条件1
IAMポリシ"handson-Cloud9EnvironmentOwner-policy"が存在する。
事前条件 [before]
主処理の実施は、以下の状態であることを前提とします。
- 事前条件1
IAMポリシ"handson-Cloud9EnvironmentOwner-policy"が存在しない。
作業対象 [what]¶
IAMサービス
標準時間(合計)¶
8分
パラメータ設定¶
- パラメータ設定の標準時間
2分
作業に必要なモノ・情報 [resource]¶
作業開始には、以下が全て揃っていることが必要です。
リソース1: IAMポリシ名
作成するIAMポリシの名称です。
今回は"handson-Cloud9EnvironmentOwner-policy"とします。
タスクの実施¶
- タスク標準時間
6分
1. 前処理¶
処理対象の状態確認¶
主処理の実施は、以下の状態であることを前提とします。
前提と異なることが判明した場合、直ちに処理を中止します。
事前条件1: IAMポリシ"handson-Cloud9EnvironmentOwner-policy"が存在しない。
「IAMポリシ"handson-Cloud9EnvironmentOwner-policy"が存在しない。」ことを確認します。
IAMマネジメントコンソールの"ポリシー"( https://console.aws.amazon.com/iam/home#/policies )にアクセスします。
"フィルター"で"ユーザーによる管理"を選択します。
"検索"欄に"handson-Cloud9EnvironmentOwner-policy"を入力します。
"結果がありません"と表示されることを確認します。
2. 主処理¶
IAMポリシの作成¶
ポリシ一覧 (画面)
"ポリシーの作成"(ボタン)をクリックします。
ポリシーの作成 (画面)

"JSON"(タブ)をクリックします。

以下のポリシドキュメントで上書きします。
ポリシ:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "cloud9:ValidateEnvironmentName", "cloud9:GetUserPublicKey", "iam:GetUser", "iam:ListUsers", "ec2:DescribeIamInstanceProfileAssociations", "ec2:DescribeInstances", "ec2:DescribeInstanceStatus", "ec2:DescribeSubnets", "ec2:DescribeVolumes", "ec2:DescribeVpcs" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "cloud9:CreateEnvironmentEC2", "cloud9:DeleteEnvironment" ], "Resource": "*", "Condition": { "StringLike": { "cloud9:EnvironmentName": "handson-*", "cloud9:InstanceType": "t2.*" } } }, { "Effect": "Allow", "Action": "cloud9:DescribeEnvironmentMemberships", "Resource": "*", "Condition": { "Null": { "cloud9:UserArn": "true", "cloud9:EnvironmentId": "true" } } }, { "Effect": "Allow", "Action": "iam:CreateServiceLinkedRole", "Resource": "*", "Condition": { "StringLike": { "iam:AWSServiceName": "cloud9.amazonaws.com" } } }, { "Effect": "Allow", "Action": [ "ec2:DisassociateIamInstanceProfile", "ec2:AssociateIamInstanceProfile" ], "Resource": "arn:aws:ec2:*:*:instance/*", "Condition": { "StringLike": { "ec2:ResourceTag/Name": "aws-cloud9-handson-*" } } }, { "Sid": "VisualEditor4", "Effect": "Allow", "Action": [ "ec2:RebootInstances", "ec2:StopInstances", "ec2:StartInstances", "ec2:TerminateInstances" ], "Resource": "arn:aws:ec2:*:*:instance/*", "Condition": { "StringLike": { "ec2:ResourceTag/Name": "aws-cloud9-handson-*" } } }, { "Action": "iam:ListInstanceProfiles", "Effect": "Allow", "Resource": [ "arn:aws:iam::*:instance-profile/*" ] }, { "Action": "iam:PassRole", "Effect": "Allow", "Resource": [ "arn:aws:iam::*:role/handson-*" ], "Condition": { "StringLike": { "iam:PassedToService": [ "ec2.amazonaws.com" ] } } } ] }
"ポリシーの確認"(ボタン)をクリックします。
ポリシーの作成 (画面)
"ポリシーの作成"(画面)が表示されます。
以下を入力します。
- 名前
handson-Cloud9EnvironmentOwner-policy
- 説明
AWS CLI handson environment
"ポリシーの作成"(ボタン)をクリックします。