本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
跨帳戶交付的 IAM 角色
當您發佈到 Amazon Data Firehose 時,您可以選擇與要監控資源 (來源帳戶) 位於相同帳戶的交付串流 (來源帳戶),或在不同的帳戶 (目標帳戶) 中。若要啟用跨帳戶將流程日誌交付至 Amazon Data Firehose,您必須在來源帳戶中建立IAM角色,並在目標帳戶中建立IAM角色。
來源帳戶角色
在來源帳戶中,建立授予下列許可的角色。在此範例中,角色的名稱是 mySourceRole
,但您可以為此角色選擇其他名稱。最後一個陳述式允許目的地帳戶中的角色擔任此角色。條件陳述式可確保此角色僅傳遞至日誌交付服務,而且只有在監控指定的資源時才會傳遞。建立原則時,請使用條件金鑰iam:AssociatedResourceARN
指定要監視的、網路介面或子網路。VPCs
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::
source-account
:role/mySourceRole
", "Condition": { "StringEquals": { "iam:PassedToService": "delivery.logs.amazonaws.com" }, "StringLike": { "iam:AssociatedResourceARN": [ "arn:aws:ec2:region
:source-account
:vpc/vpc-00112233344556677
" ] } } }, { "Effect": "Allow", "Action": [ "logs:CreateLogDelivery", "logs:DeleteLogDelivery", "logs:ListLogDeliveries", "logs:GetLogDelivery" ], "Resource": "*" }, { "Effect": "Allow", "Action": "sts:AssumeRole", "Resource": "arn:aws:iam::destination-account
:role/AWSLogDeliveryFirehoseCrossAccountRole" } ] }
確保此角色具有下列信任政策,以允許日誌交付服務擔任角色。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "delivery.logs.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
在來源帳戶,使用下列程序建立角色。
建立來源帳戶角色
在開啟IAM主控台https://console.aws.amazon.com/iam/
。 -
在導覽窗格中,選擇政策。
-
選擇 Create policy (建立政策)。
-
在 Create policy (建立政策) 頁面上,執行下列動作:
-
選擇JSON。
-
將此視窗的內容取代為本節開頭的許可政策。
-
選擇 Next (下一步)。
-
輸入原則的名稱以及選擇性的說明和標記,然後選擇 [建立原則]。
-
-
在導覽窗格中,選擇 Roles (角色)。
-
選擇 Create Role (建立角色)。
-
對於 Trusted entity type (信任的實體類型),選擇 Custom trust policy (自訂信任政策)。對於 Custom trust policy (自訂信任政策),將
"Principal": {},
取代為下列內容,以指定日誌交付服務。選擇 Next (下一步)。"Principal": { "Service": "delivery.logs.amazonaws.com" },
-
在 Add permissions (新增許可) 頁面上,選取您先前在此程序中建立的政策的核取方塊,然後選擇 Next (下一步)。
-
輸入您角色的名稱,然後選擇性提供描述。
-
選擇 Create Role (建立角色)。
目的地帳戶角色
在目的地帳戶中,建立名稱開頭為的角色AWSLogDeliveryFirehoseCrossAccountRole。此角色必須授予下列許可。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iam:CreateServiceLinkedRole", "firehose:TagDeliveryStream" ], "Resource": "*" } ] }
請確保此角色具有下列信任政策,可讓您在來源帳戶中建立的角色擔任此角色。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::
source-account
:role/mySourceRole
" }, "Action": "sts:AssumeRole" } ] }
透過目的地帳戶,使用下列程序建立角色。
建立目的地帳戶角色
在開啟IAM主控台https://console.aws.amazon.com/iam/
。 -
在導覽窗格中,選擇政策。
-
選擇 Create policy (建立政策)。
-
在 Create policy (建立政策) 頁面上,執行下列動作:
-
選擇JSON。
-
將此視窗的內容取代為本節開頭的許可政策。
-
選擇 Next (下一步)。
-
輸入原則開頭為的名稱 AWSLogDeliveryFirehoseCrossAccountRole,然後選擇 [建立原則]。
-
-
在導覽窗格中,選擇 Roles (角色)。
-
選擇 Create Role (建立角色)。
-
對於 Trusted entity type (信任的實體類型),選擇 Custom trust policy (自訂信任政策)。對於 Custom trust policy (自訂信任政策),將
"Principal": {},
取代為下列內容,以指定來源帳戶角色。選擇 Next (下一步)。"Principal": { "AWS": "arn:aws:iam::
source-account
:role/mySourceRole
" }, -
在 Add permissions (新增許可) 頁面上,選取您先前在此程序中建立的政策的核取方塊,然後選擇 Next (下一步)。
-
輸入您角色的名稱,然後選擇性提供描述。
-
選擇 Create Role (建立角色)。