使用 CloudWatch 的服務連結角色 - Amazon CloudWatch

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

使用 CloudWatch 的服務連結角色

Amazon CloudWatch 使用 AWS Identity and Access Management (IAM) 服務連結角色。服務連結角色是直接連結至 CloudWatch的唯一IAM角色類型。服務連結角色由預先定義,CloudWatch 並包含服務呼叫其他人所需的所有權限 AWS 代表您提供的服務。

中的一個服務連結角色 CloudWatch 可設定可終止、停止或重新啟動 Amazon EC2 執行個體的 CloudWatch 警示,而不需要您手動新增必要的許可。另一個服務連結角色可讓監控帳戶從您指定的其他帳戶存取 CloudWatch資料,以建立跨帳戶跨區域儀表板。

CloudWatch 定義這些服務連結角色的權限,除非另有定義,否則只 CloudWatch 能擔任該角色。定義的權限包括信任原則和權限原則,而且該權限原則無法附加至任何其他IAM實體。

您必須先刪除角色的相關資源,才能刪除角色。此限制可保護您的 CloudWatch 資源,因為您無法意外移除存取資源的權限。

如需支援服務連結角色之其他服務的相關資訊,請參閱 AWS 使用的服務,IAM並在服務連結角色欄中尋找具有 [是] 的服務。選擇具有連結的,以檢視該服務的服務連結角色文件。

CloudWatch 警示EC2動作的服務連結角色權限

CloudWatch 使用名為的服務連結角色 AWSServiceRoleForCloudWatchEvents— CloudWatch 使用此服務連結角色執行 Amazon EC2 警示動作。

服 AWSServiceRoleForCloudWatchEvents 務連結角色會信任 E CloudWatch vents 服務擔任該角色。CloudWatch 事件會在警示呼叫時叫用終止、停止或重新啟動執行個體動作。

AWSServiceRoleForCloudWatchEvents 服務連結角色許可政策允許 CloudWatch 事件在 Amazon EC2 執行個體上完成下列動作:

  • ec2:StopInstances

  • ec2:TerminateInstances

  • ec2:RecoverInstances

  • ec2:DescribeInstanceRecoveryAttribute

  • ec2:DescribeInstances

  • ec2:DescribeInstanceStatus

AWSServiceRoleForCloudWatchCrossAccount服務連結角色權限原則 CloudWatch 允許完成下列動作:

  • sts:AssumeRole

CloudWatch 應用程式訊號的服務連結角色權限

CloudWatch 應用程式信號使用名為的服務連結角色 AWSServiceRoleForCloudWatchApplicationSignals— CloudWatch 使用此服務連結角色來收集記 CloudWatch 錄資料、X-Ray 追蹤資料、 CloudWatch 指標資料,以及標記來自您為 CloudWatch 應用程式啟用應用程式訊號的資料。

AWSServiceRoleForCloudWatchApplicationSignals服務連結角色會信任 CloudWatch 應用程式信號擔任該角色。Application Signals 會從您的帳戶中收集日誌、追蹤、指標和標記資料。

AWSServiceRoleForCloudWatchApplicationSignals已附加IAM原則,且此原則已命名為CloudWatchApplicationSignalsServiceRolePolicy。此政策授予 CloudWatch 應用程式信號的權限,以收集其他相關資料的監視和標記資料 AWS 服務。它包含允許 Application Signals 完成下列動作的許可:

  • xray:GetServiceGraph

  • logs:StartQuery

  • logs:GetQueryResults

  • cloudwatch:GetMetricData

  • cloudwatch:ListMetrics

  • tag:GetResources

的完整內容CloudWatchApplicationSignalsServiceRolePolicy如下:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "XRayPermission", "Effect": "Allow", "Action": [ "xray:GetServiceGraph" ], "Resource": [ "*" ], "Condition": { "StringEquals": { "aws:ResourceAccount": "${aws:PrincipalAccount}" } } }, { "Sid": "CWLogsPermission", "Effect": "Allow", "Action": [ "logs:StartQuery", "logs:GetQueryResults" ], "Resource": [ "arn:aws:logs:*:*:log-group:/aws/appsignals/*:*", "arn:aws:logs:*:*:log-group:/aws/application-signals/data:*" ], "Condition": { "StringEquals": { "aws:ResourceAccount": "${aws:PrincipalAccount}" } } }, { "Sid": "CWListMetricsPermission", "Effect": "Allow", "Action": [ "cloudwatch:ListMetrics" ], "Resource": [ "*" ], "Condition": { "StringEquals": { "aws:ResourceAccount": "${aws:PrincipalAccount}" } } }, { "Sid": "CWGetMetricDataPermission", "Effect": "Allow", "Action": [ "cloudwatch:GetMetricData" ], "Resource": [ "*" ] }, { "Sid": "TagsPermission", "Effect": "Allow", "Action": [ "tag:GetResources" ], "Resource": [ "*" ], "Condition": { "StringEquals": { "aws:ResourceAccount": "${aws:PrincipalAccount}" } } } ] }

CloudWatch 警示 Systems Manager OpsCenter 動作的服務連結角色權限

CloudWatch 使用名為 AWSServiceRoleForCloudWatchAlarms_Action 的服務連結角色 SSM — 在 CloudWatch 警示進入狀態時, CloudWatch使用此服務連結角色執行 Systems Manager 動 OpsCenter 作。ALARM

服 AWSServiceRoleForCloudWatchAlarms_ActionSSM 務連結角色會信任CloudWatch 服務擔任該角色。 CloudWatch 警示會在警示呼叫時叫用「Systems Manager OpsCenter 」動作。

AWSServiceRoleForCloudWatchAlarms_Action SSM 服務連結角色權限原則可讓 Systems Manager 完成下列動作:

  • ssm:CreateOpsItem

CloudWatch 警示系統管理員事件管理員動作的服務連結角色權限

CloudWatch 使用名為 AWSServiceRoleForCloudWatchAlarms_A 的服務連結角色 ctionSSMIncidents — 當 CloudWatch 警示進入狀態時, CloudWatch 會使用此服務連結角色啟動事件管理員事件。ALARM

AWSServiceRoleForCloudWatchAlarms_A 服ctionSSMIncidents務連結角色會信任 CloudWatch 服務擔任該角色。 CloudWatch 警示會在警示呼叫時叫用「Systems Manager 管理員事件管理員」動作。

AWSServiceRoleForCloudWatchAlarms_A ctionSSMIncidents 服務連結角色權限原則可讓 Systems Manager 完成下列動作:

  • ssm-incidents:StartIncident

跨帳戶 CloudWatch 跨區域的服務連結角色權限

CloudWatch 使用名為的服務連結角色 AWSServiceRoleForCloudWatchCrossAccount— CloudWatch 使用此角色存取其他角色中的 CloudWatch 資料 AWS 您指定的帳戶。SLR僅提供假定角色權限,以允許 CloudWatch 服務承擔共用帳戶中的角色。它是提供資料存取的共享角色。

AWSServiceRoleForCloudWatchCrossAccount服務連結角色權限原則 CloudWatch 允許完成下列動作:

  • sts:AssumeRole

AWSServiceRoleForCloudWatchCrossAccount務連結角色會信任 CloudWatch 服務擔任該角色。

CloudWatch 資料庫 Performance Insights 的服務連結角色權限

CloudWatch 使用名為 AWSServiceRoleForCloudWatchMetrics_ DbPerfInsights 的服務連結角色。— CloudWatch 使用此角色擷取 Performance Insights 指標,以建立警示和快照。

AWSServiceRoleForCloudWatchMetrics_ DbPerfInsights 服務連結角色已附加AWSServiceRoleForCloudWatchMetrics_DbPerfInsightsServiceRolePolicyIAM原則。該政策的內容如下:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "pi:GetResourceMetrics" ], "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceAccount": "${aws:PrincipalAccount}" } } } ] }

AWSServiceRoleForCloudWatchMetrics_ 服DbPerfInsights務連結角色會信任 CloudWatch 服務擔任該角色。

建立服務連結角色 CloudWatch

您不需要手動建立任何這些服務連結角色。您第一次在 AWS Management Console、或 IAMCLI,會為IAMAPI您CloudWatch 建立 AWSServiceRoleForCloudWatchEvents 和 AWSServiceRoleForCloudWatchAlarms_ 動SSM作

第一次啟用服務和拓撲探索時,應用程式信號會AWSServiceRoleForCloudWatchApplicationSignals為您建立。

當您第一次啟用帳戶成為跨帳戶跨區域功能的監控帳戶時, CloudWatch 會AWSServiceRoleForCloudWatchCrossAccount為您建立。

當您第一次建立使用DB_PERF_INSIGHTS公制數學函數的鬧鐘時, CloudWatch 會DbPerfInsights為您建立 AWSServiceRoleForCloudWatchMetrics_

如需詳細資訊,請參閱IAM使用指南中的建立服務連結角色

編輯下列項目的服務連結角色 CloudWatch

CloudWatch 不允許您編輯AWSServiceRoleForCloudWatchEventsAWSServiceRoleForCloudWatchAlarms_ 動作SSMAWSServiceRoleForCloudWatchMetrics_ DbPerfInsights 角色。AWSServiceRoleForCloudWatchCrossAccount在您建立這些角色之後,您便無法變更其名稱,因為各種實體可能會參考這些角色。但是,您可以使用編輯這些角色的描述IAM。

編輯服務連結角色說明 (IAM主控台)

您可以使用主IAM控台編輯服務連結角色的說明。

編輯服務連結角色的說明 (主控台)
  1. 在IAM主控台的導覽窗格中,選擇 [角色]。

  2. 選擇要修改之角色的名稱。

  3. Role description (角色說明) 的最右邊,選擇 Edit (編輯)。

  4. 在方塊中鍵入新的說明,然後選擇 Save (儲存)

編輯服務連結的角色描述 (AWS CLI)

您可以使用IAM指令 AWS Command Line Interface 以編輯服務連結角色的說明。

若要變更服務連結角色的描述 (AWS CLI)
  1. (選用) 若要檢視角色的目前說明,請使用下列命令:

    $ aws iam get-role --role-name role-name

    使用角色名稱 (而不是) 來參照 ARN AWS CLI 命令。例如,如果某個角色具有以下內容ARN:arn:aws:iam::123456789012:role/myrole,您可以將該角色稱為myrole

  2. 若要更新服務連結角色的說明,請使用下列命令:

    $ aws iam update-role-description --role-name role-name --description description

編輯服務連結角色描述 () IAM API

您可以使用IAMAPI編輯服務連結角色的說明。

若要變更服務連結角色的描述 () API
  1. (選用) 若要檢視角色的目前說明,請使用下列命令:

    GetRole

  2. 若要更新角色的說明,請使用下列命令:

    UpdateRoleDescription

刪除下列項目的服務連結角色 CloudWatch

如果您不再有自動停止、終止或重新啟動EC2執行個體的警示,建議您刪除 AWSServiceRoleForCloudWatchEvents角色。

如果您不再有執行 Systems Manager OpsCenter 動作的警示,建議您刪除 AWSServiceRoleForCloudWatchAlarms_ActionSSM 角色。

如果您刪除所有使用DB_PERF_INSIGHTS量度數學函數的警示,建議您刪除 AWSServiceRoleForCloudWatchMetrics_ DbPerfInsights 服務連結角色。

如此一來,您就沒有未主動監控或維護的未使用實體。然而,務必清除您的服務連結角色,之後才能將其刪除。

清除服務連結角色

您必須先確認角色沒有作用中工作階段,並移除角色使用的所有資源,然後才能用IAM來刪除服務連結角色。

檢查服務連結角色在主控台中是否具有作用中的IAM工作階段
  1. 在開啟IAM主控台https://console.aws.amazon.com/iam/

  2. 在導覽窗格中,選擇角色。選擇 AWSServiceRoleForCloudWatchEvents 角色的名稱 (不是核取方塊)。

  3. Summary (摘要) 頁面上,針對所選角色選擇 Access Advisor (存取 Advisor),然後檢閱服務連結角色的近期活動。

    注意

    如果您不確定 CloudWatch 是否正在使用 AWSServiceRoleForCloudWatchEvents角色,請嘗試刪除角色。如果服務正在使用該角色,則刪除會失敗,而您可以檢視正在使用該角色的 區域。如果服務正在使用該角色,您必須先等到工作階段結束,才能刪除該角色。您無法撤銷服務連結角色的工作階段。

刪除服務連結角色 (IAM主控台)

您可以使用主IAM控台刪除服務連結角色。

刪除服務連結角色 (主控台)
  1. 在開啟IAM主控台https://console.aws.amazon.com/iam/

  2. 在導覽窗格中,選擇角色。選擇您要刪除的角色名稱旁的核取方塊,而非名稱或資料列本身。

  3. 對於 Role actions (角色動作),選擇 Delete role (刪除角色)

  4. 在確認對話方塊中,複查上次存取的服務資料,其中顯示每個選取的角色上次存取 AWS 服務。這可協助您確認角色目前是否作用中。若要繼續,請選擇 Yes, Delete (是,刪除)

  5. 觀看主IAM控台通知,以監控服務連結角色刪除的進度。由於IAM服務連結的角色刪除是非同步的,因此在您提交要刪除的角色之後,刪除工作可能會成功或失敗。如果任務失敗,從通知中選擇 View details (檢視詳細資訊)View Resources (檢視資源),以了解刪除失敗原因。如果刪除因角色使用服務中資源而失敗,則失敗原因會包含資源清單。

刪除服務連結角色 (AWS CLI)

您可以使用IAM指令 AWS Command Line Interface 刪除服務連結角色。

若要刪除服務連結角色 (AWS CLI)
  1. 因為無法刪除正在使用或具有相關聯資源的服務連結角色,所以您必須提交刪除要求。如果不符合這些條件,則可以拒絕該請求。您必須從回應中擷取 deletion-task-id,以檢查刪除任務的狀態。鍵入下列命令,以提交服務連結角色刪除要求:

    $ aws iam delete-service-linked-role --role-name service-linked-role-name
  2. 鍵入下列命令,以檢查刪除任務的狀態:

    $ aws iam get-service-linked-role-deletion-status --deletion-task-id deletion-task-id

    刪除任務的狀態可以是 NOT_STARTEDIN_PROGRESSSUCCEEDEDFAILED。如果刪除失敗,則呼叫會傳回失敗原因,以進行疑難排解。

刪除服務連結角色 () IAM API

您可以使用刪IAMAPI除服務連結角色。

若要刪除服務連結角色 () API
  1. 若要提交服務連結角色的刪除要求,請致電DeleteServiceLinkedRole。在要求中,指定您要刪除的角色名稱。

    因為無法刪除正在使用或具有相關聯資源的服務連結角色,所以您必須提交刪除要求。如果不符合這些條件,則可以拒絕該請求。您必須從回應中擷取 DeletionTaskId,以檢查刪除任務的狀態。

  2. 要檢查刪除狀態,請致電GetServiceLinkedRoleDeletionStatus。在請求中,指定 DeletionTaskId

    刪除任務的狀態可以是 NOT_STARTEDIN_PROGRESSSUCCEEDEDFAILED。如果刪除失敗,則呼叫會傳回失敗原因,以進行疑難排解。

CloudWatch 更新至 AWS 服務連結角色

檢視有關更新的詳細資訊 AWS CloudWatch 自此服務開始追蹤這些變更之後的受管理政策。如需有關此頁面變更的自動警示,請訂閱「 CloudWatch 文件記錄」頁面上的RSS摘要。

變更 描述 日期

AWSServiceRoleForCloudWatchApplicationSignals-更新服務鏈接角色策略的權限

CloudWatch 將更多記錄群組新增至此角色所授logs:StartQuery與的logs:GetQueryResults權限範圍。

2024年4月24日

AWSServiceRoleForCloudWatchApplicationSignals— 新的服務連結角色

CloudWatch 新增這個新的服務連結角色,可讓 CloudWatch應用程式信號收集 CloudWatch 記錄資料、X-Ray 追蹤資料、CloudWatch 指標資料,以及標記您已針對應用程式啟用「應用程式訊號」的應用 CloudWatch 程式資料。

2023 年 11 月 9 日

AWSServiceRoleForCloudWatchMetrics_DbPerfInsights— 新的服務連結角色

CloudWatch 新增這個新的服務連結角色,以允許擷 CloudWatch 取 Performance Insights 指標,以進行警報和快照。IAM原則會附加至此角色,而且原則會授與代表您擷 CloudWatch 取 Performance Insights 指標的權限。

2023 年 9 月 13 日

AWSServiceRoleForCloudWatchAlarms_A ctionSSMIncidents — 新的服務連結角色

CloudWatch 增加了新的服務鏈接角色, CloudWatch 以允許在 AWS Systems Manager 事件管理員。

2021 年 4 月 26 日

CloudWatch 開始追蹤變更

CloudWatch 開始追蹤其服務連結角色的變更。

2021 年 4 月 26 日