メニュー
AWS Identity and Access Management
ユーザーガイド

IAM JSON ポリシーエレメント: Version

あいまいさに関する注意

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

Version エレメントは、このポリシーを処理するために使用される言語構文ルールを指定します。指定したバージョンで使用できない機能を含めると、ポリシーでエラーが生成されるか、ポリシーが意図したとおりに動作しません。一般的なルールとして、使用可能な最新のバージョンを指定してください (以降のバージョンで廃止された機能に依存する場合を除きます)。

Version 要素は、Statement 要素の前に表示する必要があります。許可される値は下記のみとなります。

  • 2012-10-17. これはポリシー言語の最新バージョンであり、すべてのポリシーに対してこのバージョン番号を使用する必要があります。

  • 2008-10-17。これはポリシー言語の旧バージョンです。既存のポリシーでは、このバージョンが表示される場合があります。新規ポリシーを作成するときや既存ポリシーを更新するときは、この旧バージョンを使用しないでください。

Versionエレメントを含めない場合、値は既定の2008-10-17となります。しかし、常に Version エレメントを含め、2012-10-17 に設定することを推奨します。

注記

ポリシーが、ポリシー変数などのように、それ以降のバージョンで導入された機能を使用する場合は、Version要素を含めて2012-10-17 に設定する必要があります2012-10-17 に設定された Version エレメントを含めないと、${aws:username} といった変数は変数として認識されず、代わりにポリシー内のリテラル文字列として扱われます。

"Version": "2012-10-17"