IAM JSON ポリシー要素Version - AWS Identity and Access Management

IAM JSON ポリシー要素Version

あいまいさに関する注意

この Version JSON ポリシー要素はポリシーバージョンとは異なります。Version ポリシー要素は、ポリシー内で使用され、ポリシー言語のバージョンを定義します。一方で、ポリシーバージョンは、IAM でカスタマー管理ポリシーを変更すると作成されます。変更されたポリシーによって既存のポリシーが上書きされることはありません。代わりに、IAM は管理ポリシーの新しいバージョンを作成します。管理ポリシーに対する複数のバージョンのサポートに関する情報を探している場合は、「IAM ポリシーのバージョニング」を参照してください。

Version ポリシー要素は、このポリシーを処理するために使用される言語構文ルールを指定します。使用可能なポリシーの機能をすべて使用するには、すべてのポリシーの Statement 要素の外部にある以下の Version 要素を含めます。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "s3:ListAllMyBuckets", "Resource": "*" } ] }

IAM は以下の Version 要素値をサポートしています。

  • 2012-10-17. これはポリシー言語の現行バージョンであり、常に Version 要素を含め、2012-10-17 に設定する必要があります。このようにしない場合、このバージョンで導入されたポリシー変数などの機能は使用できません。

  • 2008-10-17. これはポリシー言語の旧バージョンです。既存のポリシーで古めのものでは、このバージョンが表示される場合があります。新規ポリシーを作成するときや既存ポリシーを更新するときは、この旧バージョンを使用しないでください。ポリシー変数などの新しい機能は、ポリシーでは機能しません。たとえば、${aws:username} などの変数は変数として認識されず、代わりにポリシー内のリテラル文字列として扱われます。