

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

# AWS CloudTrail リソースベースのポリシーの例
<a name="security_iam_resource-based-policy-examples"></a>

このセクションでは、CloudTrail Lake ダッシュボード、イベントデータストア、およびチャネルのリソースベースのポリシーの例を示します。

CloudTrail は、次のタイプのリソースベースのポリシーをサポートしています。
+ CloudTrail Lake と 外のイベントソースの統合に使用されるチャネルのリソースベースのポリシー AWS。チャネルのリソースベースのポリシーでは、チャネル上で `PutAuditEvents` を呼び出して送信先のイベントデータストアにイベントを送信できるプリンシパルエンティティ (アカウント、ユーザー、ロール、フェデレーションユーザー) を定義します。CloudTrail Lake との統合の作成の詳細については、「[の外部でイベントソースとの統合を作成する AWS](query-event-data-store-integration.md)」を参照してください。
+ どのプリンシパルがイベントデータストアでアクションを実行できるかを制御するリソースベースのポリシー。リソースベースのポリシーを使用して、イベントデータストアへのクロスアカウントアクセスを提供できます。
+ ダッシュボードの更新スケジュールの設定時に定義した間隔で CloudTrail が CloudTrail Lake ダッシュボードを更新できるようにする、ダッシュボードのリソースベースのポリシー。詳細については、「[CloudTrail コンソールを使用してカスタムダッシュボードの更新スケジュールを設定する](lake-dashboard-refresh.md)」を参照してください。

**Topics**
+ [チャネルのリソースベースのポリシーの例](#security_iam_resource-based-policy-examples-channels)
+ [イベントデータストアのリソースベースのポリシーの例](#security_iam_resource-based-policy-examples-eds)
+ [ダッシュボードのリソースベースのポリシーの例](#security_iam_resource-based-policy-examples-dashboards)

## チャネルのリソースベースのポリシーの例
<a name="security_iam_resource-based-policy-examples-channels"></a>

チャネルのリソースベースのポリシーでは、チャネル上で `PutAuditEvents` を呼び出して送信先のイベントデータストアにイベントを送信できるプリンシパルエンティティ (アカウント、ユーザー、ロール、フェデレーションユーザー) を定義します。

ポリシーに必要な情報は、統合タイプによって決まります。
+ 直接統合の場合、CloudTrail ではポリシーにパートナーの AWS アカウント ID を含める必要があり、パートナーから提供された固有の外部 ID を入力する必要があります。CloudTrail コンソールを使用して統合を作成すると、CloudTrail はパートナーの AWS アカウント IDs をリソースポリシーに自動的に追加します。ポリシーに必要な AWS アカウント 番号を取得する方法については、[パートナーのドキュメント](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/query-event-data-store-integration.html#cloudtrail-lake-partner-information#lake-integration-partner-documentation)を参照してください。
+ ソリューション統合では、少なくとも 1 つの AWS アカウント ID をプリンシパルとして指定する必要があり、必要に応じて外部 ID を入力して混乱した代理を防ぐことができます。

リソースベースのポリシーの要件は次のとおりです。
+  ポリシーには、少なくとも 1 つのステートメントを含めます。ポリシーには、最大 20 個のステートメントを記述できます。
+  各ステートメントには、少なくとも 1 つのプリンシパルを含めます。プリンシパルは、アカウント、ユーザー、ロール、またはフェデレーションユーザーです。1 つのステートメントには、最大 50 個のプリンシパルを記述できます。
+ ポリシーで定義されているリソース ARN は、ポリシーがアタッチされているチャネル ARN と一致する必要があります。
+  ポリシーには、 1 つのアクションのみを含めます。`cloudtrail-data:PutAuditEvents`

所有者によるリソースへのアクセスがポリシーで拒否されていない限り、チャネル所有者はチャネルで `PutAuditEvents` API を呼び出すことができます。

**Topics**
+ [例: プリンシパルへのチャネルアクセス権の付与](#security_iam_resource-based-policy-examples-principals)
+ [例: 外部 ID を使用して混乱した代理問題を防止する](#security_iam_resource-based-policy-examples-externalID)

### 例: プリンシパルへのチャネルアクセス権の付与
<a name="security_iam_resource-based-policy-examples-principals"></a>

次の例では、ARN `arn:aws:iam::111122223333:root`、`arn:aws:iam::444455556666:root`、および `arn:aws:iam::123456789012:root` を持つプリンシパルに、ARN `arn:aws:cloudtrail:us-east-1:777788889999:channel/EXAMPLE-80b5-40a7-ae65-6e099392355b` を使用して CloudTrail チャネルの [PutAuditEvents](https://docs.aws.amazon.com/awscloudtraildata/latest/APIReference/API_PutAuditEvents.html) API を呼び出すアクセス許可を付与します。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement":
    [
        {
            "Sid": "ChannelPolicy",
            "Effect": "Allow",
            "Principal":
            {
                "AWS":
                [
                    "arn:aws:iam::111122223333:root",
                    "arn:aws:iam::444455556666:root",
                    "arn:aws:iam::123456789012:root"
                ]
            },
            "Action": "cloudtrail-data:PutAuditEvents",
            "Resource": "arn:aws:cloudtrail:us-east-1:777788889999:channel/EXAMPLE-80b5-40a7-ae65-6e099392355b"
        }
    ]
}
```

------

### 例: 外部 ID を使用して混乱した代理問題を防止する
<a name="security_iam_resource-based-policy-examples-externalID"></a>

次の例では、外部 ID を使用して[混乱した代理問題](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cross-service-confused-deputy-prevention.html)に対処し防止しています。混乱した代理問題は、アクションを実行する許可を持たないエンティティが、より特権のあるエンティティにアクションを実行するように強制できるセキュリティの問題です。

統合パートナーはポリシーで使用する外部 ID を作成します。次に、統合の作成の一環として、統合パートナーは外部 ID を提供します。値は、パスフレーズやアカウント番号など、一意であればどんな文字列でもかまいません。

この例では、ARN `arn:aws:iam::111122223333:root`、`arn:aws:iam::444455556666:root`、および `arn:aws:iam::123456789012:root` を持つプリンシパルに、ポリシーで定義された外部 ID 値が `PutAuditEvents` API の呼び出しに含まれていれば CloudTrail チャネルリソースで [PutAuditEvents](https://docs.aws.amazon.com/awscloudtraildata/latest/APIReference/API_PutAuditEvents.html) API を呼び出すことができるアクセス許可を付与します。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement":
    [
        {
            "Sid": "ChannelPolicy",
            "Effect": "Allow",
            "Principal":
            {
                "AWS":
                [
                    "arn:aws:iam::111122223333:root",
                    "arn:aws:iam::444455556666:root",
                    "arn:aws:iam::123456789012:root"
                ]
            },
            "Action": "cloudtrail-data:PutAuditEvents",
            "Resource": "arn:aws:cloudtrail:us-east-1:777788889999:channel/EXAMPLE-80b5-40a7-ae65-6e099392355b"
        }
    ]
}
```

------

## イベントデータストアのリソースベースのポリシーの例
<a name="security_iam_resource-based-policy-examples-eds"></a>

リソースベースのポリシーにより、どのプリンシパルがイベントデータストアでアクションを実行できるかを制御できます。

リソースベースのポリシーを使用すると、クロスアカウントアクセスを提供して、選択したプリンシパルがイベントデータストアにクエリを実行したり、クエリを一覧表示およびキャンセルしたり、クエリ結果を表示したりするのを許可できます。

CloudTrail Lake ダッシュボードでは、リソースベースのポリシーを使用して、ダッシュボードが更新されたときに CloudTrail がイベントデータストアでクエリを実行してダッシュボードのウィジェットのデータを入力するのを許可します。CloudTrail Lake では、[カスタムダッシュボードを作成する](lake-dashboard-custom.md)とき、または CloudTrail コンソールで [Highlights ダッシュボードを有効にする](lake-dashboard-highlights.md)ときに、デフォルトのリソースベースのポリシーをイベントデータストアにアタッチできます。

イベントデータストアのリソースベースのポリシーでは、次のアクションがサポートされています。
+  `cloudtrail:StartQuery` 
+  `cloudtrail:CancelQuery` 
+  `cloudtrail:ListQueries` 
+  `cloudtrail:DescribeQuery` 
+  `cloudtrail:GetQueryResults` 
+  `cloudtrail:GenerateQuery` 
+  `cloudtrail:GenerateQueryResultsSummary` 
+  `cloudtrail:GetEventDataStore` 

イベントデータストアを[作成](query-event-data-store-cloudtrail.md#query-event-data-store-cloudtrail-procedure)または[更新](query-event-data-store-update.md)したり、CloudTrail コンソールでダッシュボードを管理したりすると、イベントデータストアにリソースベースのポリシーを追加するオプションが提供されます。[put-resource-policy](https://docs.aws.amazon.com/cli/latest/reference/cloudtrail/put-resource-policy.html) コマンドを実行して、リソースベースのポリシーをイベントデータストアにアタッチすることもできます。

リソースベースのポリシーは 1 つ以上のステートメントで構成されます。例えば、CloudTrail がダッシュボードのイベントデータストアをクエリできるようにするステートメントと、イベントデータストアをクエリするためのクロスアカウントアクセスを許可するステートメントを 1 つずつ含めることができます。CloudTrail コンソールのイベントデータストアの詳細ページから、既存のイベントデータストアのリソースベースのポリシーを[アップデート](query-event-data-store-update.md)できます。

[組織イベントデータストア](cloudtrail-lake-organizations.md)の場合、CloudTrail は、委任管理者アカウントが組織イベントデータストアで実行できるアクションを一覧表示する[デフォルトのリソースベースのポリシー](cloudtrail-lake-organizations.md#cloudtrail-lake-organizations-eds-rbp)を作成します。このポリシーのアクセス許可は、 AWS Organizationsの委任管理者アクセス許可から取得されます。このポリシーは、組織イベントデータストアまたは組織が変更されると自動的にアップデートされます (例えば、CloudTrail の委任管理者アカウントが登録または削除された場合)。

**Topics**
+ [例: CloudTrail がクエリを実行してダッシュボードを更新できるようにする](#security_iam_resource-based-policy-examples-eds-dashboard)
+ [例: 他のアカウントがイベントデータストアのクエリとクエリ結果の表示を行えるようにする](#security_iam_resource-based-policy-examples-eds-query)

### 例: CloudTrail がクエリを実行してダッシュボードを更新できるようにする
<a name="security_iam_resource-based-policy-examples-eds-dashboard"></a>

更新中に CloudTrail Lake ダッシュボードにデータを入力するには、CloudTrail がユーザーに代わってクエリを実行できるようにする必要があります。これを行うには、ダッシュボードウィジェットに関連付けられた各イベントデータストアにリソースベースのポリシーをアタッチします。これには、CloudTrail がウィジェットのデータを入力する `StartQuery` オペレーションを実行できるようにするステートメントが含まれます。

ステートメントの要件を以下に示します。
+ 唯一の `Principal` は `cloudtrail.amazonaws.com` です。
+ 許可されている `Action` は `cloudtrail:StartQuery` のみです。
+ には、ダッシュボード ARN (複数可) と AWS アカウント ID `Condition`のみが含まれます。`AWS:SourceArn` では、ダッシュボード ARN の配列を提供できます。

次のポリシーの例には、CloudTrail が `example-dashboard1` および `example-dashboard2` という名前の 2 つのカスタムダッシュボード、ならびにアカウント `123456789012` の `AWSCloudTrail-Highlights` という名前の Highlights ダッシュボードのイベントデータストアでクエリを実行できるようにするステートメントが含まれています。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement":
    [
        {
            "Effect": "Allow",
            "Principal":
            {
                "Service": "cloudtrail.amazonaws.com"
            },
            "Action":
            [
                "cloudtrail:StartQuery"
            ],
            "Resource": "arn:aws:cloudtrail:us-east-1:123456789012:dashboard/*",
            "Condition": {
               "StringLike": {
                  "AWS:SourceArn": [
                     "arn:aws:cloudtrail:us-east-1:123456789012:dashboard/example-dashboard1",
                     "arn:aws:cloudtrail:us-east-1:123456789012:dashboard/example-dashboard2",
                     "arn:aws:cloudtrail:us-east-1:123456789012:dashboard/AWSCloudTrail-Highlights"
                  ],
                  "AWS:SourceAccount": "123456789012"
               }
            }
        }
    ]
}
```

------

### 例: 他のアカウントがイベントデータストアのクエリとクエリ結果の表示を行えるようにする
<a name="security_iam_resource-based-policy-examples-eds-query"></a>

リソースベースのポリシーを使用して、イベントデータストアへのクロスアカウントアクセスを提供し、他のアカウントがイベントデータストアでクエリを実行できるようにします。

次のポリシーの例には、アカウント `111122223333`、`777777777777`、`999999999999`、および `111111111111` のルートユーザーが、アカウント ID `555555555555` が所有するイベントデータストアでクエリを実行し、クエリ結果を取得できるようにするステートメントが含まれています。

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "policy1",
      "Effect": "Allow",
      "Principal": {
        "AWS": [
            "arn:aws:iam::111122223333:root",
            "arn:aws:iam::777777777777:root",
            "arn:aws:iam::999999999999:root",
            "arn:aws:iam::111111111111:root"
        ]
      },
      "Action": [
        "cloudtrail:StartQuery",
        "cloudtrail:GetEventDataStore",
        "cloudtrail:GetQueryResults"
      ],
      "Resource": "arn:aws:cloudtrail:us-east-1:555555555555:eventdatastore/example80-699f-4045-a7d2-730dbf313ccf"
    }
  ]
}
```

------

## ダッシュボードのリソースベースのポリシーの例
<a name="security_iam_resource-based-policy-examples-dashboards"></a>

CloudTrail Lake ダッシュボードの更新スケジュールを設定できます。これにより、CloudTrail は更新スケジュールを設定するときに定義した間隔でユーザーに代わってダッシュボードを更新できます。これを行うには、リソースベースのポリシーをダッシュボードにアタッチして、CloudTrail がダッシュボードで `StartDashboardRefresh` オペレーションを実行できるようにする必要があります。

リソースベースのポリシーの要件は次のとおりです。
+ 唯一の `Principal` は `cloudtrail.amazonaws.com` です。
+ ポリシーで許可されている `Action` は `cloudtrail:StartDashboardRefresh` のみです。
+ には、ダッシュボードの ARN と AWS アカウント ID `Condition`のみが含まれます。

次のポリシー例では、CloudTrail がアカウント `123456789012` の `exampleDash` という名前のダッシュボードを更新できるようにします。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement":
    [
        {
            "Effect": "Allow",
            "Principal":
            {
                "Service": "cloudtrail.amazonaws.com"
            },
            "Action":
            [
                "cloudtrail:StartDashboardRefresh"
            ],
            "Resource": "arn:aws:cloudtrail:us-east-1:123456789012:dashboard/*",
            "Condition": {
                "StringEquals": {
                    "AWS:SourceArn": "arn:aws:cloudtrail:us-east-1:123456789012:dashboard/exampleDash",
                    "AWS:SourceAccount":"123456789012"
                }
            }
        }
    ]
}
```

------