

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# RCP 構文
<a name="orgs_manage_policies_rcps_syntax"></a>

リソースコントロールポリシー (RCP) は、[リソースベースのポリシー](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_resource-based)で使用されるものと同じ構文を使用します。IAM ポリシーの詳細とその構文については、[IAM ユーザーガイド](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html)の「*IAM ポリシーの概要*」を参照してください。

RCP は [JSON](http://json.org) のルールに従って構造化されます。このトピックで説明されている要素を使用します。

**注記**  
RCP 内のすべての文字は、その[上限サイズ](orgs_reference_limits.md#min-max-values)に対してカウントされます。このガイドの例では、読みやすさを向上させるため、空白文字を追加してフォーマットされた RCP を示しています。ただし、ポリシーサイズが上限サイズに近づいている場合は、スペースを節約するために、引用符の外側にあるすべての空白文字 (スペースや改行など) を削除できます。

RCP に関する一般情報については、「[リソースコントロールポリシー (RCP)](orgs_manage_policies_rcps.md)」を参照してください。

## 要素の概要
<a name="rcp-elements-table"></a>

次の表には、RCP で使用できるポリシー要素を要約しています。

**注記**  
**`Allow` の効果は、`RCPFullAWSAccess` ポリシーでのみサポートされます。**  
`Allow` の効果は、`RCPFullAWSAccess` ポリシーでのみサポートされます。このポリシーは、リソースコントロールポリシー (RCP) を有効化すると、組織のルート、すべての OU、および組織内のすべてのアカウントに自動的にアタッチされます。このポリシーをデタッチすることはできません。このデフォルトの RCP では、プリンシパルとアクションへのアクセスがすべて RCP 評価を通過します。つまり、RCP を作成してアタッチするまで、既存の IAM アクセス許可がすべてそのまま維持されます。これにより、アクセスは付与されません。


| Element | 目的 | 
| --- | --- | 
| [Version](#rcp-syntax-version) | ポリシーの処理に使用する言語構文ルールを指定します。 | 
| [Statement](#rcp-syntax-statement) | ポリシー要素のコンテナとして機能します。RCP には複数のステートメントを含めることができます。 | 
| [Statement ID (Sid)](#rcp-syntax-sid) | (オプション) ステートメントにわかりやすい名前を付けます。 | 
| [[Effect]](#rcp-syntax-effect) (効果) | RCP ステートメントがアカウントのリソースへのアクセスを拒否するかどうかを定義します。 | 
| [プリンシパル](#rcp-syntax-principal) | アカウントのリソースへのアクセスを許可または拒否するプリンシパルを指定します。 | 
|  [アクション](#rcp-syntax-action)  |  RCP が許可または拒否する AWS サービスとアクションを指定します。  | 
| [[リソース]](#rcp-syntax-resource)  | RCP が適用される AWS リソースを指定します。 | 
| [NotResource](#rcp-syntax-resource) |  RCP から除外される AWS リソースを指定します。`Resource` 要素の代わりに使用します。  | 
| [条件](#rcp-syntax-condition) | ステートメントを実行するタイミングの条件を指定します。 | 

**Topics**
+ [要素の概要](#rcp-elements-table)
+ [`Version` 要素](#rcp-syntax-version)
+ [`Statement` 要素](#rcp-syntax-statement)
+ [ステートメント ID (`Sid`) 要素](#rcp-syntax-sid)
+ [`Effect` 要素](#rcp-syntax-effect)
+ [`Principal` 要素](#rcp-syntax-principal)
+ [`Action` 要素](#rcp-syntax-action)
+ [`Resource` および `NotResource` 要素](#rcp-syntax-resource)
+ [`Condition` 要素](#rcp-syntax-condition)
+ [サポートされていない要素](#rcp-syntax-unsupported)

## `Version` 要素
<a name="rcp-syntax-version"></a>

すべての RCP には、**"2012-10-17"** 値を持つ要素 `Version` が含まれる必要があります。これは、IAM アクセス許可ポリシーの最新バージョンと同じバージョンの値です。

詳細については、*IAM ユーザーガイド*の「[IAM JSON ポリシー要素: Version](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_version.html)」を参照してください。

## `Statement` 要素
<a name="rcp-syntax-statement"></a>

RCP は、1 つ以上の `Statement` 要素で構成されます。ポリシーには `Statement` キーワードを 1 つだけ含めることができますが、値は、ステートメントの JSON 配列 ([ ] の文字で囲まれる) もあります。

以下の例は、単一の `Effect`、`Principal`、`Action` および `Resource` 要素で構成される単一のステートメントを示しています。

```
 {
    "Statement": {
        "Effect": "Deny",
        "Principal": "*",
        "Action": "s3:PutBucketPublicAccessBlock",
        "Resource": "*"
    }
}
```

詳細については、*IAM ユーザーガイド*の「[IAM JSON ポリシー要素: Statement](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_statement.html)」を参照してください。

## ステートメント ID (`Sid`) 要素
<a name="rcp-syntax-sid"></a>

`Sid` は、ポリシーステートメントに提供するオプションの識別子です。`Sid` 値は、ステートメント配列内の各ステートメントに割り当てることができます。次の RCP 例は、`Sid` ステートメント例を示しています。

```
{
    "Statement": {
        "Sid": "DenyBPAConfigurations",
        "Effect": "Deny",
        "Principal": "*",
        "Action": "s3:PutBucketPublicAccessBlock",
        "Resource": "*"
    }
}
```

詳細については、「*IAM ユーザーガイド*」の「[IAM JSON ポリシー要素: Sid](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_sid.html)」を参照してください。

## `Effect` 要素
<a name="rcp-syntax-effect"></a>

各ステートメントには必ず `Effect` を 1 つ含める必要があります。`Effect` 要素に `Deny` の値を使用することで、RCP の有効時に特定のリソースへのアクセスを制限したり、条件を定義することができます。RCP を作成する場合、値は `Deny` である必要があります。詳細については、「[RCP 評価](orgs_manage_policies_rcps_evaluation.md)」および「*IAM ユーザーガイド*」の「[IAM JSON ポリシー要素 Effect](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_effect.html)」を参照してください。

## `Principal` 要素
<a name="rcp-syntax-principal"></a>

各ステートメントには必ず `Principal` 要素を含める必要があります。RCP の `Principal` 要素には「`*`」のみを指定できます。`Conditions` 要素を使用して、特定のプリンシパルを制限します。

詳細については、「*IAM ユーザーガイド*」の「[AWS JSON ポリシーの要素: Principal](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html)」を参照してください。

## `Action` 要素
<a name="rcp-syntax-action"></a>

各ステートメントには必ず `Action` 要素を含める必要があります。

`Action` 要素の値は、ステートメントによって許可または拒否される AWS サービスとアクションを識別する文字列の文字列またはリスト (JSON 配列) です。

各文字列は、サービスの略称 (「s3」、「sqs」、「sts」など) で構成されており、すべて小文字で、その後にコロン、次にサービスのアクションが続きます。一般的にこれらはすべて、大文字で始まり、残りは小文字の各単語で入力されます。例: `"s3:ListAllMyBuckets"`。

RCP ではアスタリスク (\$1) や疑問符 (?) などのワイルドカード文字を使用することもできます。
+ 名前の一部を共有する複数のアクションを検索するには、アスタリスクをワイルドカードとして使用します。値 `"s3:*"` は、Amazon S3 サービス内のすべてのアクションを意味します。値は、「Get」で始まる AWS STS アクションのみ`"sts:Get*"`に一致します。
+ 単一の文字を検索する場合は疑問符 (?) を使用します。

**注記**  
**ワイルドカード (\$1) と疑問符 (?) は、アクション名の任意の場所で使用できます。**  
カスタマーマネージド RCP のアクション要素で「\$1」を使用することはできません。また、アクセスを制限するサービスの略語 (「s3」、「sqs」、「sts」など) を指定する必要があります。

RCP をサポートするサービスのリストについては、「[RCPs AWS のサービス をサポートする のリスト](orgs_manage_policies_rcps.md#rcp-supported-services)」を参照してください。が AWS のサービス サポートするアクションのリストについては、*「サービス認可リファレンス*」の[AWS 「サービスのアクション、リソース、および条件キー](https://docs.aws.amazon.com/service-authorization/latest/reference/reference_policies_actions-resources-contextkeys.html.html)」を参照してください。

詳細については、*IAM ユーザーガイド*の「[IAM JSON ポリシーの要素: Action](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_action.html)」を参照してください。

## `Resource` および `NotResource` 要素
<a name="rcp-syntax-resource"></a>

各ステートメントには必ず `Resource` または `NotResource` 要素を含める必要があります。

リソース要素では、アスタリスク (\$1) や疑問符 (?) などのワイルドカード文字を使用することができます。
+ 名前の一部が同じである複数のリソースを検索するには、アスタリスク (\$1) をワイルドカードとして使用します。
+ 単一の文字を検索する場合は疑問符 (?) を使用します。

詳細については、「*IAM ユーザーガイド*」の「[IAM JSON ポリシー要素: Resource](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_resource.html)」および「[IAM JSON ポリシー要素: NotResource](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_notresource.html)」を参照してください。

## `Condition` 要素
<a name="rcp-syntax-condition"></a>

 RCP の拒否ステートメントには、`Condition` 要素を指定することができます。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Deny",
            "Principal": "*",
            "Action": "s3:*",
            "Resource": "*",
            "Condition": {
                "BoolIfExists": {
                    "aws:SecureTransport": "false"
                }
            }
        }
    ]
}
```

------

この RCP は、リクエストが安全なトランスポート経由で発生した (リクエストが TLS 経由で送信された) 場合を除き、Amazon S3 オペレーションとリソースへのアクセスを拒否します。

詳細については、「*IAM ユーザーガイド*」の「[IAM JSON ポリシー要素: 条件](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html)」を参照してください。

## サポートされていない要素
<a name="rcp-syntax-unsupported"></a>

以下の要素は RCP ではサポートされていません。
+ `NotPrincipal`
+ `NotAction`