##概要
AWSでサービスへのアクセス許可を設定するポリシーを楽に作成するにはポリシージェネレーターを使うとよい。
書き方覚えた方がいいんだろうけど、最初はどう書いたらいいかわからないし、まずはこれで。
##手順
Step 1: Select Policy Type
このジェネレータではS3の他にはSQS,VPC,IAM,SNSのポリシーが作成できます。
今回作成するポリシーはS3バケットのポリシーにします。
Step 2: Add Statement(s)
各項目は以下のようなものです。
Effect → アクセスを許可かするか、拒否するか
Principal → 許可対象
AWS Service → どのサービスに対して、という意味だが、S3の場合はS3のみしか選択できない
Actions → どのアクションを対象にするか
Amazon Resource Name (ARN) → リソース名
今回はS3に対して、以下の設定でポリシーを作成してみます。
-
ユーザ
-
udon (IAMで作成済み. ARN→arn:aws:iam::123456789012:user/udon)
-
バケット (バケットは全てのkeyにアクセスできるように * とする)
-
test.bucket (ARN→arn:aws:s3:::test.bucket/*)
-
アクション
-
読み取り(GET)、アップロード(PUT)のみ許可する
ポリシージェネレーターでは以下のように設定する。
Actionsはリストで選択するので画像では見えませんが、GetObject と PutObjectのみオンにしました。
設定が終わったら Add Statement を押します。
押すと、ボタンの下に詳細が表示されます。
いくつか同時にポリシーを設定できるので、他にも設定したい場合は、再度入力し、Add Statementを押すと、このエリアに表示されていきます。
Step 3: Generate Policy
最後に Generate Policy ボタンを押すと、ポリシーが表示されます。
このポリシーをS3のポリシー設定に貼り付ければOKです。
以上、ポリシージェネレーターによるポリシー作成でした。