

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

# AWS Amazon Data Firehose の Transit Gateway、Flow Logs レコード
<a name="flow-logs-kinesis"></a>

**Topics**
+ [クロスアカウント配信のための IAM ロール](#flow-logs-kinesis-iam)
+ [ソースアカウントロールの作成](flowlog-fh-create-source.md)
+ [送信先アカウントロールを作成する](flowlog-fh-create-destination.md)
+ [Firehose に発行するフローログの作成](flow-logs-kinesis-create.md)

フローログはフローログデータを直接 Firehose に発行できます。フローログの発行先は、リソースモニターと同じアカウント、または別のアカウントを選択できます。

**前提条件**

Firehose に発行すると、フローログデータは Firehose 配信ストリームにプレーンテキスト形式で発行されます。最初に、Firehose の配信ストリームを作成しておく必要があります。配信ストリーム作成の詳細については、「Amazon Data Firehose デベロッパーガイド」の「[Amazon Data Firehose 配信ストリームの作成](https://docs.aws.amazon.com/firehose/latest/dev/basic-create.html)」を参照してください。

**料金**

標準の取り込み料金と配信料金が適用されます。詳細については、「[Amazon CloudWatch 料金表](https://aws.amazon.com/cloudwatch/pricing/)」を開き、**[ログ]** を選択して **[提供されたログ]** を参照してください。

## クロスアカウント配信のための IAM ロール
<a name="flow-logs-kinesis-iam"></a>

Kinesis Data Firehose に発行する場合、監視するリソースと同じアカウント (ソースアカウント) または別のアカウント (送信先アカウント) にある配信ストリームを選択できます。Firehose へのフローログのクロスアカウント配信を有効にするには、ソースアカウントと送信先アカウントに IAM ロールをそれぞれ作成する必要があります。

**Topics**
+ [ソースアカウントロール](#flow-logs-kinesis-iam-role-source)
+ [送信先アカウントロール](#flow-logs-kinesis-iam-role-destination)

### ソースアカウントロール
<a name="flow-logs-kinesis-iam-role-source"></a>

ソースアカウントで、次のアクセス許可を付与するロールを作成します。この例のロールの名前は `mySourceRole` ですが、このロールには別の名前を選択できます。最後のステートメントにより、送信先アカウントのロールがこのロールを引き受けることができるようになります。条件ステートメントにより、このロールは指定されたリソースを監視する場合に限り、ログ配信サービスだけに渡されます。ポリシーを作成するときに、監視する VPC、ネットワークインターフェイス、またはサブネットを条件キー `iam:AssociatedResourceARN` で指定します。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "iam:PassRole",
            "Resource": "arn:aws:iam::111122223333:role/mySourceRole",
            "Condition": {
                "StringEquals": {
                    "iam:PassedToService": "delivery.logs.amazonaws.com"
                },
                "StringLike": {
                    "iam:AssociatedResourceARN": [
                        "arn:aws:ec2:us-east-1:source-account:transit-gateway/tgw-0fb8421e2da853bf"
                    ]
                }
            }
        },
        {
            "Effect": "Allow",
            "Action": [
                "logs:CreateLogDelivery",
                "logs:DeleteLogDelivery",
                "logs:ListLogDeliveries",
                "logs:GetLogDelivery"
            ],
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": "sts:AssumeRole",
            "Resource": "arn:aws:iam::111122223333:role/AWSLogDeliveryFirehoseCrossAccountRole"
        }
    ]
}
```

------

このロールに以下の信頼ポリシーがあることを確認します。これにより、ログ配信サービスがロールを引き受けることができます。

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "delivery.logs.amazonaws.com"
      },
      "Action": "sts:AssumeRole"
    }
  ]
}
```

------

### 送信先アカウントロール
<a name="flow-logs-kinesis-iam-role-destination"></a>

送信先アカウントで、**AWSLogDeliveryFirehoseCrossAccountRole** で始まる名前のロールを作成します。このロールには、以下のアクセス許可が必要です。

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
          "iam:CreateServiceLinkedRole",
          "firehose:TagDeliveryStream"
      ],
      "Resource": "*"
    }
  ]
}
```

------

このロールに次の信頼ポリシーがあることを確認します。これにより、ソースアカウントで作成したロールがこのロールを引き受けることができます。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::111122223333:role/mySourceRole"
            },
            "Action": "sts:AssumeRole"
        }
    ]
}
```

------

# Amazon Data Firehose の AWS Transit Gateway Flow Logs ソースアカウントロールを作成する
<a name="flowlog-fh-create-source"></a>

ソースアカウントから、 AWS Identity and Access Management コンソールでソースロールを作成します。

**ソースアカウントロールを作成するには**

1. にサインイン AWS マネジメントコンソール し、[https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/) で IAM コンソールを開きます。

1. ナビゲーションペインで、**ポリシー** を選択してください。

1. **[ポリシーの作成]** を選択します。

1. [ポリシーの作成] ページで、次の操作を行います。

   1. **[JSON]** を選択します。

   1. このウィンドウのコンテンツを、このセクションの冒頭にあるアクセス許可ポリシーに置き換えてください。

   1. **[次へ: タグ]**、**[次へ: 確認]** の順に選択します。

   1. ポリシーの名前と説明 (省略可能) を入力し、**[ポリシーの作成]** を選択します。

1. ナビゲーションペインで **[ロール] **を選択します。

1. [**ロールの作成**] を選択してください。

1. **[信頼されたエンティティのタイプ]** には、**[カスタム信頼ポリシー]** を選択します。**[カスタム信頼ポリシー]** で、`"Principal": {},` を次のように置き換え、ログ配信サービスを指定します。[**次へ**] を選択します。

   ```
   "Principal": {
      "Service": "delivery.logs.amazonaws.com"
   },
   ```

1. **[Add permissions]** (アクセス許可の追加) ページで、この手順で先ほど作成したポリシーの横にあるチェックボックスを選択し、**[Next]** (次へ) を選択します。

1. ロールの名前を入力し、オプションで説明を入力します。

1. [**ロールの作成**] を選択してください。

# Amazon Data Firehose の AWS Transit Gateway Flow Logs 送信先アカウントロールを作成する
<a name="flowlog-fh-create-destination"></a>

送信先アカウントから、 AWS Identity and Access Management コンソールで送信先ロールを作成します。

**送信先アカウントロールを作成するには**

1. にサインイン AWS マネジメントコンソール し、[https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/) で IAM コンソールを開きます。

1. ナビゲーションペインで、**ポリシー** を選択してください。

1. **[ポリシーの作成]** を選択します。

1. [ポリシーの作成] ページで、次の操作を行います。

   1. **[JSON]** を選択します。

   1. このウィンドウのコンテンツを、このセクションの冒頭にあるアクセス許可ポリシーに置き換えてください。

   1. **[次へ: タグ]**、**[次へ: 確認]** の順に選択します。

   1. **AWSLogDeliveryFirehoseCrossAccountRole** で始まるポリシーの名前を入力し、**[ポリシーの作成]** を選択します。

1. ナビゲーションペインで **Roles (ロール) ** を選択してください。

1. [**ロールの作成**] を選択してください。

1. **[信頼されたエンティティのタイプ]** には、**[カスタム信頼ポリシー]** を選択します。**[カスタム信頼ポリシー]** で、`"Principal": {},` を次のように置き換え、ログ配信サービスを指定します。[**次へ**] を選択します。

   ```
   "Principal": {
      "AWS": "arn:aws:iam::source-account:role/mySourceRole"
   },
   ```

1. **[Add permissions]** (アクセス許可の追加) ページで、この手順で先ほど作成したポリシーの横にあるチェックボックスを選択し、**[Next]** (次へ) を選択します。

1. ロールの名前を入力し、オプションで説明を入力します。

1. [**ロールの作成**] を選択してください。

# Amazon Data Firehose に発行する AWS Transit Gateway フローログレコードを作成する
<a name="flow-logs-kinesis-create"></a>

Amazon Data Firehose に公開する Transit Gateway フローログを作成します。フローログを作成する前に、クロスアカウント配信のソース IAM アカウントロールと宛先 IAM アカウントロールを設定し、Firehose 配信ストリームを作成します。詳細については「[Amazon Data Firehose のフローログ](flow-logs-kinesis.md)」を参照してください。Firehose フローログは、Amazon VPC コンソールまたは CLI AWS を使用して作成できます。

**コンソールを使用して Firehose に発行される Transit Gateway フローログを作成するには**

1. Amazon VPC コンソールの [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/) を開いてください。

1. ナビゲーションペインで、**[Transit Gateways]**、**[Transit Gateway アタッチメント]** の順に選択します。

1. 1 つまたは複数の Transit Gateway または Transit Gateway アタッチメントのチェックボックスを選択します。

1. **[アクション]**、**[フローログの作成]** を選択します。

1. **[送信先]** には、**[Firehose 配信システム]** への送信を選択します。

1. **[Firehose 配信ストリーム ARN]** には、フローログの発行先として作成した配信ストリームの ARN を選択します。

1. **[ログレコード形式]** で、フローログレコードの形式を指定します。
   + デフォルトのフローログレコード形式を使用するには、**[AWS のデフォルト形式]** を選択します。
   + カスタム形式を作成するには、[**カスタム形式**] を選択します。**[ログの形式]** で、フローログレコードに含めるフィールドを選択します。

1. (オプション) フローログにタグを追加するには、[**新しいタグを追加**] を選択し、タグのキーと値を指定します。

1. **[フローログの作成]** を選択します。

**コマンドラインツールを使用して Firehose に発行されるフローログを作成するには**

以下のいずれかのコマンドを使用します。
+ [create-flow-logs](https://docs.aws.amazon.com/cli/latest/reference/ec2/create-flow-logs.html) (AWS CLI)
+ [New-EC2FlowLog](https://docs.aws.amazon.com/powershell/latest/reference/items/New-EC2FlowLog.html) (AWS Tools for Windows PowerShell)

次の CLI AWS の例では、トランジットゲートウェイ情報をキャプチャし、指定された Firehose 配信ストリームにフローログを配信するフローログを作成します。

```
aws ec2 create-flow-logs \ 
                --resource-type TransitGateway \ 
                --resource-ids tgw-1a2b3c4d \ 
                --log-destination-type kinesis-data-firehose \
                --log-destination arn:aws:firehose:us-east-1:123456789012:deliverystream:flowlogs_stream
```

次の CLI AWS の例では、トランジットゲートウェイ情報をキャプチャし、フローログをソースアカウントとは異なる Firehose 配信ストリームに配信するフローログを作成します。

```
aws ec2 create-flow-logs  \
  --resource-type TransitGateway \
  --resource-ids gw-1a2b3c4d \
  --log-destination-type kinesis-data-firehose \
  --log-destination arn:aws:firehose:us-east-1:123456789012:deliverystream:flowlogs_stream \
  --deliver-logs-permission-arn arn:aws:iam::source-account:role/mySourceRole \ 
  --deliver-cross-account-role arn:aws:iam::destination-account:role/AWSLogDeliveryFirehoseCrossAccountRole
```