本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 CloudWatch 的服務連結角色
Amazon CloudWatch 使用 AWS Identity and Access Management (IAM) 服務連結角色 。服務連結角色是直接連結至 的唯一IAM角色類型 CloudWatch。服務連結角色由 預先定義,CloudWatch 並包含服務 AWS 代表您呼叫其他服務所需的所有許可。
中的一個服務連結角色 CloudWatch 會設定警示,這些 CloudWatch 警示可以終止、停止或重新啟動 Amazon EC2執行個體,而不需要您手動新增必要的許可。另一個服務連結角色可讓監控帳戶從您指定的其他帳戶存取 CloudWatch資料,以建置跨帳戶跨區域儀表板。
CloudWatch 會定義這些服務連結角色的許可,除非另有定義,否則 CloudWatch 只能擔任該角色。定義的許可包括信任政策和許可政策,該許可政策無法連接到任何其他IAM實體。
您必須先刪除角色的相關資源,才能刪除角色。此限制會保護您的 CloudWatch 資源,因為您不會不小心移除存取資源的許可。
如需有關支援服務連結角色的其他 服務的資訊,請參閱服務連結角色欄中AWS 與 搭配使用的服務IAM,並尋找具有 Yes 的服務。選擇具有連結的是,以檢視該服務的服務連結角色文件。
CloudWatch 警示EC2動作的服務連結角色許可
CloudWatch 使用名為 AWSServiceRoleForCloudWatchEvents 的服務連結角色, CloudWatch 使用此服務連結角色來執行 Amazon EC2警示動作。
AWSServiceRoleForCloudWatchEvents 服務連結角色信任 CloudWatch Events 服務擔任該角色。CloudWatch 當警示呼叫 時,事件會叫用終止、停止或重新啟動執行個體動作。
AWSServiceRoleForCloudWatchEvents 服務連結角色許可政策允許 CloudWatch Events 在 Amazon EC2執行個體上完成下列動作:
-
ec2:StopInstances
-
ec2:TerminateInstances
-
ec2:RecoverInstances
-
ec2:DescribeInstanceRecoveryAttribute
-
ec2:DescribeInstances
-
ec2:DescribeInstanceStatus
AWSServiceRoleForCloudWatchCrossAccount 服務連結角色許可政策允許 CloudWatch 完成下列動作:
-
sts:AssumeRole
CloudWatch Application Signals 的服務連結角色許可
CloudWatch Application Signals 使用名為 的服務連結角色 AWSServiceRoleForCloudWatchApplicationSignals – CloudWatch 使用此服務連結角色,從您已啟用 CloudWatch Application Signals 的應用程式收集 CloudWatch 日誌資料、X-Ray 追蹤資料、 CloudWatch 指標資料和標記資料。
AWSServiceRoleForCloudWatchApplicationSignals 服務連結角色信任 CloudWatch Application Signals 擔任該角色。Application Signals 會從您的帳戶中收集日誌、追蹤、指標和標記資料。
AWSServiceRoleForCloudWatchApplicationSignals 已連接IAM政策,此政策名為 CloudWatchApplicationSignalsServiceRolePolicy。此政策授予 CloudWatch Application Signals 許可,以從其他相關 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_ActionSSM 的服務連結角色 – CloudWatch 使用此服務連結角色,在 CloudWatch 警示進入 ALARM 狀態時執行 Systems Manager OpsCenter 動作。
AWSServiceRoleForCloudWatchAlarms_ActionSSM 服務連結角色信任CloudWatch 服務擔任 role. CloudWatch alarms 在警示呼叫時呼叫 Systems Manager OpsCenter 動作。
AWSServiceRoleForCloudWatchAlarms_ActionSSM 服務連結角色許可政策允許 Systems Manager 完成下列動作:
-
ssm:CreateOpsItem
CloudWatch 警示 Systems Manager Incident Manager 動作的服務連結角色許可
CloudWatch 使用名為 AWSServiceRoleForCloudWatchAlarms_ActionSSMIncidents 的服務連結角色 – CloudWatch 使用此服務連結角色,在 CloudWatch 警示進入 ALARM 狀態時啟動 Incident Manager 事件。
AWSServiceRoleForCloudWatchAlarms_ActionSSMIncidents 服務連結角色信任 CloudWatch 服務在警示呼叫時擔任 role. CloudWatch alarms 調用 Systems Manager Incident Manager 動作。
AWSServiceRoleForCloudWatchAlarms_服務ctionSSMIncidents連結角色許可政策允許 Systems Manager 完成下列動作:
-
ssm-incidents:StartIncident
CloudWatch 跨帳戶跨區域的服務連結角色許可
CloudWatch 使用名為 的服務連結角色AWSServiceRoleForCloudWatchCrossAccount: CloudWatch 使用此角色來存取您指定之其他 AWS 帳戶中 CloudWatch 的資料。SLR 僅提供擔任角色的許可,以允許 CloudWatch 服務擔任共用帳戶中的角色。它是提供資料存取的共享角色。
AWSServiceRoleForCloudWatchCrossAccount 服務連結角色許可政策允許 CloudWatch 完成下列動作:
-
sts:AssumeRole
AWSServiceRoleForCloudWatchCrossAccount 服務連結角色信任 CloudWatch 服務擔任該角色。
CloudWatch 資料庫 Performance Insights 的服務連結角色許可
CloudWatch 使用名為 AWSServiceRoleForCloudWatchMetrics_DbPerfInsights 的服務連結角色。– CloudWatch 使用此角色來擷取 Performance Insights 指標,以建立警示和快照。
AWSServiceRoleForCloudWatchMetrics_DbPerfInsights service-linked 角色已連接AWSServiceRoleForCloudWatchMetrics_DbPerfInsightsServiceRolePolicy
IAM政策。該政策的內容如下:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "pi:GetResourceMetrics" ], "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceAccount": "${aws:PrincipalAccount}" } } } ] }
AWSServiceRoleForCloudWatchMetrics_DbPerfInsights service-linked 角色信任 CloudWatch 服務擔任該角色。
為 建立服務連結角色 CloudWatch
您不需要手動建立任何這些服務連結角色。當您第一次在 AWS Management Console、 IAM CLI或 IAM 中建立警示時API, 會為您CloudWatch 建立 AWSServiceRoleForCloudWatchEvents 和 AWSServiceRoleForCloudWatchAlarms_ActionSSM。
第一次啟用服務和拓撲探索時,Application Signals AWSServiceRoleForCloudWatchApplicationSignals會為您建立。
當您第一次啟用 帳戶做為跨帳戶跨區域功能的監控帳戶時, AWSServiceRoleForCloudWatchCrossAccount會為您 CloudWatch 建立 。
當您第一次建立使用DB_PERF_INSIGHTS
指標數學函數的警示時, 會為您 CloudWatch 建立 AWSServiceRoleForCloudWatchMetrics_DbPerfInsights。
如需詳細資訊,請參閱 IAM 使用者指南 中的建立服務連結角色。
編輯 的服務連結角色 CloudWatch
CloudWatch 不允許您編輯 AWSServiceRoleForCloudWatchEvents、AWSServiceRoleForCloudWatchAlarms_Action SSM、 AWSServiceRoleForCloudWatchCrossAccount或 AWSServiceRoleForCloudWatchMetrics_DbPerfInsights 角色。在您建立這些角色之後,您便無法變更其名稱,因為各種實體可能會參考這些角色。不過,您可以使用 編輯這些角色的描述IAM。
編輯服務連結角色描述 (IAM 主控台)
您可以使用IAM主控台編輯服務連結角色的描述。
編輯服務連結角色的說明 (主控台)
-
在IAM主控台的導覽窗格中,選擇角色 。
-
選擇要修改之角色的名稱。
-
在 Role description (角色說明) 的最右邊,選擇 Edit (編輯)。
-
在方塊中鍵入新的說明,然後選擇 Save (儲存)。
編輯服務連結角色描述 (AWS CLI)
您可以使用 的IAM命令 AWS Command Line Interface 來編輯服務連結角色的描述。
變更服務連結角色的說明 (AWS CLI)
-
(選用) 若要檢視角色的目前說明,請使用下列命令:
$
aws iam get-role --role-name
role-name
使用角色名稱,而非 ARN,以使用 AWS CLI 命令來參考角色。例如,如果角色具有下列 ARN:
arn:aws:iam::123456789012:role/myrole
,則您將角色稱為myrole
。 -
若要更新服務連結角色的說明,請使用下列命令:
$
aws iam update-role-description --role-name
role-name
--descriptiondescription
編輯服務連結角色描述 (IAMAPI)
您可以使用 IAM API 編輯服務連結角色的描述。
若要變更服務連結角色的描述 (API)
-
(選用) 若要檢視角色的目前說明,請使用下列命令:
-
若要更新角色的說明,請使用下列命令:
刪除 的服務連結角色 CloudWatch
如果您不再有自動停止、終止或重新啟動EC2執行個體的警示,建議您刪除角色 AWSServiceRoleForCloudWatchEvents。
如果您不再有執行 Systems Manager OpsCenter 動作的警示,建議您刪除 AWSServiceRoleForCloudWatchAlarms_ActionSSM 角色。
如果您刪除使用DB_PERF_INSIGHTS
指標數學函數的所有警示,建議您刪除 AWSServiceRoleForCloudWatchMetrics_DbPerfInsights service-linked 角色。
如此一來,您就沒有未主動監控或維護的未使用實體。然而,務必清除您的服務連結角色,之後才能將其刪除。
清除服務連結角色
您必須先確認角色沒有作用中工作階段,並移除角色使用的任何資源,才能使用 IAM刪除服務連結角色。
檢查服務連結角色在IAM主控台中是否具有作用中工作階段
在 開啟IAM主控台https://console.aws.amazon.com/iam/
。 -
在導覽窗格中,選擇角色。選擇 AWSServiceRoleForCloudWatchEvents 角色的名稱 (而非核取方塊)。
-
在 Summary (摘要) 頁面上,針對所選角色選擇 Access Advisor (存取 Advisor),然後檢閱服務連結角色的近期活動。
注意
如果您不確定 CloudWatch 是否正在使用角色 AWSServiceRoleForCloudWatchEvents,請嘗試刪除角色。如果服務正在使用該角色,則刪除會失敗,而您可以檢視正在使用該角色的 區域。如果服務正在使用該角色,您必須先等到工作階段結束,才能刪除該角色。您無法撤銷服務連結角色的工作階段。
刪除服務連結角色 (IAM 主控台)
您可以使用IAM主控台刪除服務連結角色。
刪除服務連結角色 (主控台)
在 開啟IAM主控台https://console.aws.amazon.com/iam/
。 -
在導覽窗格中,選擇角色。選擇您要刪除的角色名稱旁的核取方塊,而非名稱或資料列本身。
-
對於 Role actions (角色動作),選擇 Delete role (刪除角色)。
-
在確認對話方塊中,檢閱服務上次存取資料,以顯示每個所選取角色上次存取 AWS 服務的時間。這可協助您確認角色目前是否作用中。若要繼續,請選擇 Yes, Delete (是,刪除)。
-
觀看IAM主控台通知,以監控服務連結角色刪除的進度。由於IAM服務連結角色刪除是非同步的,因此在您提交角色以供刪除之後,刪除任務可能會成功或失敗。如果任務失敗,從通知中選擇 View details (檢視詳細資訊) 或 View Resources (檢視資源),以了解刪除失敗原因。如果刪除因角色使用服務中資源而失敗,則失敗原因會包含資源清單。
刪除服務連結角色 (AWS CLI)
您可以使用 的IAM命令 AWS Command Line Interface 來刪除服務連結角色。
刪除服務連結角色 (AWS CLI)
-
因為無法刪除正在使用或具有相關聯資源的服務連結角色,所以您必須提交刪除要求。如果不符合這些條件,則可以拒絕該請求。您必須從回應中擷取
deletion-task-id
,以檢查刪除任務的狀態。鍵入下列命令,以提交服務連結角色刪除要求:$
aws iam delete-service-linked-role --role-name
service-linked-role-name
-
鍵入下列命令,以檢查刪除任務的狀態:
$
aws iam get-service-linked-role-deletion-status --deletion-task-id
deletion-task-id
刪除任務的狀態可以是
NOT_STARTED
、IN_PROGRESS
、SUCCEEDED
或FAILED
。如果刪除失敗,則呼叫會傳回失敗原因,以進行疑難排解。
刪除服務連結角色 (IAMAPI)
您可以使用 IAMAPI刪除服務連結角色。
若要刪除服務連結角色 (API)
-
若要提交服務連結角色的刪除請求,請呼叫 DeleteServiceLinkedRole。在要求中,指定您要刪除的角色名稱。
因為無法刪除正在使用或具有相關聯資源的服務連結角色,所以您必須提交刪除要求。如果不符合這些條件,則可以拒絕該請求。您必須從回應中擷取
DeletionTaskId
,以檢查刪除任務的狀態。 -
若要檢查刪除的狀態,請呼叫 GetServiceLinkedRoleDeletionStatus。在請求中,指定
DeletionTaskId
。刪除任務的狀態可以是
NOT_STARTED
、IN_PROGRESS
、SUCCEEDED
或FAILED
。如果刪除失敗,則呼叫會傳回失敗原因,以進行疑難排解。
CloudWatch AWS 服務連結角色的更新
檢視自此服務開始追蹤這些變更 CloudWatch 以來, 受 AWS 管政策更新的詳細資訊。如需此頁面變更的自動提醒,請訂閱 CloudWatch 文件歷史記錄頁面上的RSS摘要。
變更 | 描述 | 日期 |
---|---|---|
AWSServiceRoleForCloudWatchApplicationSignals – 更新服務連結角色政策的許可 |
CloudWatch 將更多日誌群組新增至此角色授予的 |
2024 年 4 月 24 日 |
CloudWatch 新增了這個新的服務連結角色,以允許 CloudWatch Application Signals 從您已啟用 CloudWatch Application Signals 的應用程式收集 CloudWatch 日誌資料、X-Ray 追蹤資料、CloudWatch 指標資料和標記資料。 |
2023 年 11 月 9 日 | |
AWSServiceRoleForCloudWatchMetrics_DbPerfInsights – 新的服務連結角色 |
CloudWatch 已新增此新服務連結角色, CloudWatch 允許 擷取 Performance Insights 指標以進行警示和快照。IAM 政策會連接至此角色,且政策會授予 CloudWatch 代表您擷取 Performance Insights 指標的許可。 |
2023 年 9 月 13 日 |
AWSServiceRoleForCloudWatchAlarms_ActionSSMIncidents – 新的服務連結角色 |
CloudWatch 新增了新的服務連結角色,允許 CloudWatch 在 AWS Systems Manager Incident Manager 中建立事件。 |
2021 年 4 月 26 日 |
CloudWatch 已開始追蹤變更 |
CloudWatch 已開始追蹤其服務連結角色的變更。 |
2021 年 4 月 26 日 |