

# IAM JSON ポリシー要素Version
<a name="reference_policies_elements_version"></a>

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

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

------
#### [ JSON ]

****  

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

------

IAM は以下の `Version` 要素値をサポートしています。
+ `2012-10-17`. これはポリシー言語の現行バージョンであり、常に `Version` 要素を含め、`2012-10-17` に設定する必要があります。このようにしない場合、このバージョンで導入された[ポリシー変数](reference_policies_variables.md)などの機能は使用できません。
+ `2008-10-17`. これはポリシー言語の旧バージョンです。既存のポリシーで古めのものでは、このバージョンが表示される場合があります。新規ポリシーを作成するときや既存ポリシーを更新するときは、この旧バージョンを使用しないでください。ポリシー変数などの新しい機能は、ポリシーでは機能しません。たとえば、`${aws:username}` などの変数は変数として認識されず、代わりにポリシー内のリテラル文字列として扱われます。