AWSのPolicyを書く
AWSが用意しているポリシーだと余分なのあるしカスタムしたい。
などの場合に自分でポリシーをカスタムできます。
以下の例は、S3の指定バケットの特定ユーザーへの読み取り専用アクセス許可のポリシーになります。
{
"Version":"2012-10-17",
"Statement":[
{
"Sid":"AddPerm",
"Effect":"Allow",
"Principal": "*",
"Action":["s3:GetObject"],
"Resource":["arn:aws:s3:::examplebucket/*"]
}
]
}
よく使う部分を抜粋して、簡単に要素の説明を記載します。
Effect
許可または拒否なのかを指定します。
以下例は許可を指定しています。
"Effect":"Allow"
Principal
AWSアカウント、IAMユーザー、IAMロールや、サービスを指定します。
以下例はIAMユーザーを指定しています。
"Principal": {
"AWS": [
"arn:aws:iam::AWS-account-ID:user/user-name-1",
"arn:aws:iam::AWS-account-ID:user/UserName2"
]
}
Action
許可または拒否するアクションを指定します。
以下例は自分のパスワードを変更することができるアクションを指定しています。
"Action": "iam:ChangePassword"
Resource
一連のオブジェクトを指定します。
以下例は特定の Amazon S3 バケット内のすべての項目指定しています。
"Resource": "arn:aws:s3:::my_corporate_bucket/*"
Condition
ポリシーを実行するタイミングの条件を指定します。
以下例はユーザーネームが"jon"のユーザに一致するかどうかを指定しています。
"Condition" : { "StringEquals" : { "aws:username" : "jon" }}
上記以外にNotPrincipal、NotAcition、NotResourceや、
Conditionの条件式にも「StringNotEquals」なども存在するので必要に応じて使えば色々な条件で指定することができます。
公式ページにポリシーのリファレンスがあるため、参照してみてください。
https://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/reference_policies_elements.html
ディスカッション
コメント一覧
まだ、コメントがありません