

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 跨帳戶交付的 IAM 角色
<a name="firehose-cross-account-delivery"></a>

發佈至 Amazon Data Firehose 時，您可以選擇與要監控的資源位於同一帳戶 (來源帳戶) 或不同帳戶 (目的地帳戶) 中的交付串流。若要啟用跨帳戶將流程日誌交付至 Amazon Data Firehose，必須在來源帳戶中建立 IAM 角色，並在目的地帳戶中建立 IAM 角色。

**Topics**
+ [來源帳戶角色](#firehose-source-account-role)
+ [目的地帳戶角色](#firehose-destination-account-role)

## 來源帳戶角色
<a name="firehose-source-account-role"></a>

在來源帳戶中，建立授予下列許可的角色。在此範例中，角色的名稱是 `mySourceRole`，但您可以為此角色選擇其他名稱。最後一個陳述式允許目的地帳戶中的角色擔任此角色。條件陳述式可確保此角色僅傳遞至日誌交付服務，而且只有在監控指定的資源時才會傳遞。建立政策時，請使用條件金鑰 `iam:AssociatedResourceARN` 指定要監控的 VPC、網路介面或子網路。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "iam:PassRole",
            "Resource": "arn:aws:iam::{{123456789012}}:role/{{mySourceRole}}",
            "Condition": {
                "StringEquals": {
                    "iam:PassedToService": "delivery.logs.amazonaws.com"
                },
                "StringLike": {
                    "iam:AssociatedResourceARN": [
                        "arn:aws:ec2:{{us-east-1}}:{{123456789012}}:vpc/{{vpc-00112233344556677}}"
                    ]
                }
            }
        },
        {
            "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"
    }
  ]
}
```

------

在來源帳戶，使用下列程序建立角色。

**建立來源帳戶角色**

1. 前往 [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/) 開啟 IAM 主控台。

1. 在導覽窗格中，選擇**政策**。

1. 選擇 **Create policy** (建立政策)。

1. 在 **Create policy (建立政策)** 頁面上，執行下列動作：

   1. 選擇 **JSON**。

   1. 將此視窗的內容取代為本節開頭的許可政策。

   1. 選擇**下一步**。

   1. 輸入您的政策的名稱，以及可選的描述和標籤，然後選擇 **建立政策**。

1. 在導覽窗格中，選擇 **Roles** (角色)。

1. 選擇 **Create Role** (建立角色)。

1. 對於 **Trusted entity type** (信任的實體類型)，選擇 **Custom trust policy** (自訂信任政策)。對於 **Custom trust policy** (自訂信任政策)，將 `"Principal": {},` 取代為下列內容，以指定日誌交付服務。選擇**下一步**。

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

1. 在 **Add permissions** (新增許可) 頁面上，選取您先前在此程序中建立的政策的核取方塊，然後選擇 **Next** (下一步)。

1. 輸入您角色的名稱，然後選擇性提供描述。

1. 選擇 **Create Role** (建立角色)。

## 目的地帳戶角色
<a name="firehose-destination-account-role"></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"
        }
    ]
}
```

------

透過目的地帳戶，使用下列程序建立角色。

**建立目的地帳戶角色**

1. 前往 [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/) 開啟 IAM 主控台。

1. 在導覽窗格中，選擇**政策**。

1. 選擇 **Create policy** (建立政策)。

1. 在 **Create policy (建立政策)** 頁面上，執行下列動作：

   1. 選擇 **JSON**。

   1. 將此視窗的內容取代為本節開頭的許可政策。

   1. 選擇**下一步**。

   1. 輸入您政策的名稱 (開頭為 **AWSLogDeliveryFirehoseCrossAccountRole**)，然後選擇 **Create policy** (建立政策)。

1. 在導覽窗格中，選擇 **Roles** (角色)。

1. 選擇 **Create Role** (建立角色)。

1. 對於 **Trusted entity type** (信任的實體類型)，選擇 **Custom trust policy** (自訂信任政策)。對於 **Custom trust policy** (自訂信任政策)，將 `"Principal": {},` 取代為下列內容，以指定來源帳戶角色。選擇**下一步**。

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

1. 在 **Add permissions** (新增許可) 頁面上，選取您先前在此程序中建立的政策的核取方塊，然後選擇 **Next** (下一步)。

1. 輸入您角色的名稱，然後選擇性提供描述。

1. 選擇 **Create Role** (建立角色)。