IAM JSON ポリシー要素Action
Action
要素は、許可または拒否される特定のアクションについて説明します。ステートメントには、Action
または NotAction
要素を含める必要があります。各 AWS 製品には、そのサービスで行うことができるタスクを記述する独自のアクションセットがあります。例えば、Amazon S3のアクションのリストは、Amazon Simple Storage Service ユーザーガイドのポリシーでのアクセス許可の指定にあり、Amazon EC2 のアクションのリストは、Amazon EC2 APIリファレンスにあり、AWS Identity and Access Management のアクションのリストは、IAM API リファレンスに記載されています。他のサービスのアクションのリストについては、そのサービスの API リファレンスドキュメント
値は、サービス名前空間をアクションプレフィックス(iam
、ec2
sqs
、sns
、s3
など)として使用し、許可または拒否するアクションの名前を付けて特定します。この名前は、サービスでサポートされているアクションと一致しなければいけません。プレフィックスとアクション名には、大文字と小文字の区別がありません。たとえば、iam:ListAccessKeys
は IAM:listaccesskeys
と同じです。下記の例は、様々サービスに対するAction
要素の例を示します。
Amazon SQS アクション
"Action": "sqs:SendMessage"
Amazon EC2 アクション
"Action": "ec2:StartInstances"
IAM アクション
"Action": "iam:ChangePassword"
Amazon S3 のアクション
"Action": "s3:GetObject"
Action
要素には複数の値を指定することができます。
"Action": [ "sqs:SendMessage", "sqs:ReceiveMessage", "ec2:StartInstances", "iam:ChangePassword", "s3:GetObject" ]
特定の AWS 製品が提供するすべてのアクションへのアクセスを許可するには、ワイルドカード (*) を使用することができます。たとえば、以下の Action
要素はすべての S3 アクションに適用します。
"Action": "s3:*"
また、アクション名の一部にワイルドカード(*)を使用できます。たとえば、以下の Action
要素は、AccessKey
、CreateAccessKey
、DeleteAccessKey
、ListAccessKeys
などの文字列 UpdateAccessKey
を含むすべての IAM アクションに適用されます。
"Action": "iam:*AccessKey*"
サービスの中には、使用可能なアクションに制限があるものがあります。たとえば、Amazon SQS では、使用可能なすべての Amazon SQS アクションのサブセットだけを使用することができます。この場合、*
ワイルドカードはキューの完全なコントロールを許可せず、共有しているアクションのサブセットだけが許可されます。詳細については、Amazon Simple Storage Service 開発者ガイドの「アクセス許可を理解する」を参照してください。