步驟 3:新增/驗證跨帳戶目的地的 IAM 許可 - Amazon CloudWatch Logs

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

步驟 3:新增/驗證跨帳戶目的地的 IAM 許可

根據 AWS 跨帳戶政策評估邏輯,若要存取任何跨帳戶資源 (例如做為訂閱篩選條件目的地的 Kinesis 或 Firehose 串流),您必須在傳送帳戶中擁有身分型政策,以明確存取跨帳戶目的地資源。如需有關政策評估邏輯的詳細資訊,請參閱《跨帳戶政策評估邏輯》。

您可以將身分型政策連接至用來建立訂閱篩選條件的 IAM 角色或 IAM 使用者。傳送帳戶中必須有此政策存在。如果您使用管理員角色建立訂閱篩選條件,則可以略過此步驟並繼續進行 步驟 4:建立訂閱篩選條件

新增或驗證跨帳戶所需的 IAM 許可
  1. 輸入以下命令以檢查正在使用哪個 IAM 角色或 IAM 使用者來執行 AWS 日誌命令。

    aws sts get-caller-identity

    此命令會傳回類似以下的輸出:

    { "UserId": "User ID", "Account": "sending account id", "Arn": "arn:aws:sending account id:role/user:RoleName/UserName" }

    記下以 RoleNameUserName 表示的值。

  2. 登入傳送帳戶中 AWS Management Console 的 ,並使用您在步驟 1 中輸入的命令輸出中傳回的 IAM 角色或 IAM 使用者來搜尋附加的政策。

  3. 確認連接至此角色或使用者的政策提供明確的許可,可對跨帳戶目的地資源呼叫 logs:PutSubscriptionFilter。以下範例政策顯示建議的許可。

    下列政策提供僅在單一 AWS 帳戶 中在任何目的地資源上建立訂閱篩選條件的許可123456789012

    JSON
    { "Version": "2012-10-17", "Statement": [ { "Sid": "Allow subscription filters on any resource in one specific account", "Effect": "Allow", "Action": "logs:PutSubscriptionFilter", "Resource": [ "arn:aws:logs:*:*:log-group:*", "arn:aws:logs:*:123456789012:destination:*" ] } ] }

    下列政策提供僅在單一 AWS 帳戶 sampleDestination中名為 的特定目的地資源上建立訂閱篩選條件的許可123456789012

    JSON
    { "Version": "2012-10-17", "Statement": [ { "Sid": "Allow subscription filters on one specific resource in one specific account", "Effect": "Allow", "Action": "logs:PutSubscriptionFilter", "Resource": [ "arn:aws:logs:*:*:log-group:*", "arn:aws:logs:*:123456789012:destination:sampleDestination" ] } ] }