共享CloudWatch控制面板 - Amazon CloudWatch
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

共享CloudWatch控制面板

您可以与直接无权访问您CloudWatch账户的人员共享您的AWS控制面板。这使您能够跨团队、与利益相关者以及与组织外部的人员共享控制面板。您甚至可以在团队区域的大屏幕上显示控制面板,或者将其嵌入 Wikis 和其他网页中。

在共享控制面板时,您可以指定哪些人可以通过三种方式查看控制面板:

  • 共享单个控制面板并指定可以查看控制面板的人员的特定电子邮件地址。每个这些用户都会创建自己的密码,他们必须输入密码才能查看控制面板。

  • 公开共享单个控制面板,以便拥有该链接的任何人都可以查看控制面板。

  • 共享您账户中的所有CloudWatch控制面板,并指定第三方单点登录 (SSO) 提供商以进行控制面板访问。作为此 SSO 提供商列表的成员的所有用户都可以访问账户中的所有控制面板。要启用该功能,请将 SSO 提供商与 集成Amazon Cognito。SSO 提供商必须支持安全断言标记语言 (SAML)。有关 Amazon Cognito 的更多信息,请参阅什么是 Amazon Cognito?

控制面板共享所需的权限

要能够使用以下任何方法共享控制面板并查看已共享的控制面板,您必须登录到具有特定权限的 IAM 用户或IAM角色。

要能够共享控制面板,您的 IAM 用户或IAM角色必须包含以下策略语句中包含的权限:

{ "Effect": "Allow", "Action": [ "iam:CreateRole", "iam:CreatePolicy", "iam:AttachRolePolicy", "iam:PassRole" ], "Resource": [ "arn:aws:iam::*:role/service-role/CloudWatchDashboard*", "arn:aws:iam::*:policy/*" ] }, { "Effect": "Allow", "Action": [ "cognito-idp:*", "cognito-identity:*", ], "Resource": [ "*" ] }

为了能够查看共享哪些控制面板,但无法共享控制面板,您的 IAM 用户或IAM角色可以包含类似于以下内容的策略语句:

{ "Effect": "Allow", "Action": [ "cognito-idp:*", "cognito-identity:*" ], "Resource": [ "*" ] }

向您与之共享控制面板的人员授予的权限

共享控制面板时, 在账户中CloudWatch创建一个 IAM 角色,该角色向您与之共享控制面板的人员授予以下权限:

  • cloudwatch:GetInsightRuleReport

  • cloudwatch:GetMetricData

  • cloudwatch:DescribeAlarms

  • ec2:DescribeTags

警告

您与之共享控制面板的所有人都将获得针对账户的这些权限。如果您公开共享控制面板,则拥有控制面板链接的每个人都将拥有这些权限。

cloudwatch:GetMetricDataec2:DescribeTags 的范围不能缩小到特定指标或 EC2 实例,因此有权访问控制面板的人员可以查询账户中所有 EC2 实例的所有CloudWatch指标以及其名称和标签。

为了提高安全性,您可以修改用于控制面板共享IAM的角色以缩小 cloudwatch:GetInsightRuleReportcloudwatch:DescribeAlarms 权限的范围。通常,您将执行此操作来拒绝访问 警报或未在共享控制面板上的 Contributor Insights 规则。但是,如果您拒绝对共享控制面板上的小部件的访问权限,则当您通过 共享了控制面板的人员查看控制面板时,该小部件不会显示。

要缩小IAM角色的范围,请在共享控制面板后执行以下操作:

修改共享控制面板IAM的角色以缩小某些权限的范围

  1. 通过以下网址打开 CloudWatch 控制台:https://console.amazonaws.cn/cloudwatch/

  2. 在导航窗格中,选择 Dashboards

  3. 选择共享控制面板的名称。

  4. 依次选择 Actions (操作) 和 Share dashboard (共享控制面板)。

  5. Resources (资源) 下,选择 IAM Role (IAM 角色)。

  6. 在 IAM 控制台中,选择显示的策略。

  7. 请执行下列操作之一:

    • 选择 Edit policy (编辑策略),然后添加具有 Allow effect (允许效果) 的语句,该语句仅列出警报和要共享的 Contributor Insights 规则的 ARNs。请参阅以下 示例。

      { "Effect": "Allow", "Action": [ "cloudwatch:DescribeAlarms", "cloudwatch:DescribeInsightRules" ], "Resource": [ "PublicAlarmARN", "PublicContributorInsightsRuleARN" ] },
    • 选择 Edit policy (编辑策略),然后添加具有 Deny 效果的语句,该语句列出了警报的 ARNs和要锁定的 Contributor Insights 规则。请参阅以下 示例。

      { "Effect": "Deny", "Action": [ "cloudwatch:DescribeAlarms", "cloudwatch:DescribeInsightRules" ], "Resource": [ "SensitiveAlarmARN", "SensitiveContributorInsightsRuleARN" ] },
  8. 选择 Save Changes

与特定用户共享单个控制面板

使用本节中的步骤,将控制面板与您选择的特定电子邮件地址共享。

与特定用户共享控制面板

  1. 通过以下网址打开 CloudWatch 控制台:https://console.amazonaws.cn/cloudwatch/

  2. 在导航窗格中,选择 Dashboards

  3. 选择控制面板的名称。

  4. 依次选择 Actions (操作) 和 Share dashboard (共享控制面板)。

  5. Share your dashboard and require a username and password (共享您的控制面板并要求用户名和密码) 旁边,选择 Start sharing (开始共享)。

  6. Add email addresses (添加电子邮件地址) 下,输入要与之共享控制面板的电子邮件地址。

  7. 要将CloudWatch Logs见解小部件作为共享控制面板的一部分,请选择启用共享日志小部件。如果未选择此项,则通过共享访问控制面板的人员将不看到控制面板上的任何CloudWatch Logs小部件。有关更多信息,请参阅使用日志表小部件共享控制面板

  8. 在输入所有电子邮件地址后,请阅读协议并选中确认框。然后选择 Save and generate shareable link (保存并生成可共享的链接)。

  9. 在下一页上,选择 Copy link to clipboard。然后,您可以将此链接粘贴到电子邮件中并将其发送给受邀用户。他们会自动收到单独的电子邮件,其中包含用于连接到控制面板的用户名和临时密码。

公开共享单个控制面板

使用本节中的步骤公开共享控制面板。这对于将控制面板放在团队房间的大屏幕上或将其嵌入 Wiki 页面非常有用。

重要

共享控制面板可公开供任何具有链接且无需身份验证的任何人访问。仅对不包含敏感信息的控制面板执行此操作。

公开共享控制面板

  1. 通过以下网址打开 CloudWatch 控制台:https://console.amazonaws.cn/cloudwatch/

  2. 在导航窗格中,选择 Dashboards

  3. 选择控制面板的名称。

  4. 依次选择 Actions (操作) 和 Share dashboard (共享控制面板)。

  5. Share your dashboard puticly (公开共享您的控制面板) 旁边,选择 Start sharing (开始共享)。

  6. 在文本Confirm框中输入 。

  7. 要将 CloudWatch Logs Insights 小部件作为共享控制面板的一部分,请选择 Enable sharing log widgets (启用共享日志小部件)。如果未选择此项,则通过共享访问控制面板的人员将不看到控制面板上的任何CloudWatch Logs小部件。有关更多信息,请参阅使用日志表小部件共享控制面板

  8. 阅读协议并选中确认框。然后选择 Save and generate shareable link (保存并生成可共享的链接)。

  9. 在下一页上,选择 Copy link to clipboard。然后,您可以共享此链接。与 共享链接的任何人都可以访问控制面板,而无需提供凭证。

使用 SSO 共享账户中的所有CloudWatch控制面板

使用本节中的步骤,通过单点登录 (SSO) 与用户共享您账户中的所有控制面板。

与位于 SSO 提供商列表中的用户共享您的CloudWatch控制面板

  1. 通过以下网址打开 CloudWatch 控制台:https://console.amazonaws.cn/cloudwatch/

  2. 在导航窗格中,选择 Dashboards

  3. 选择控制面板的名称。

  4. 依次选择 Actions (操作) 和 Share dashboard (共享控制面板)。

  5. 选择 Go to CloudWatch Settings (转到 CloudWatch 设置)。

  6. 如果您需要的 SSO 提供商未在可用 SSO 提供商中列出,请选择 Manage SSO providers (管理 SSO 提供商),然后按照中的说明操作为CloudWatch控制面板共享设置 SSO

    然后返回到 CloudWatch 控制台并刷新浏览器。您启用的 SSO 提供商现在应显示在列表中。

  7. Available SSO providers 列表中选择所需的 SSO 提供商

  8. 要将 CloudWatch Logs Insights 小部件作为共享控制面板的一部分,请选择 Enable sharing log widgets (启用共享日志小部件)。如果您未选择此项,则通过共享访问控制面板的人员将不看到控制面板上的任何CloudWatch Logs小部件。有关更多信息,请参阅使用日志表小部件共享控制面板

  9. 选择保存更改

为CloudWatch控制面板共享设置 SSO

要通过支持 SAML 的第三方单点登录提供商设置控制面板共享,请执行以下步骤。

重要

我们强烈建议您不要使用非 SAML SSO 提供商共享控制面板。这样做可能会导致意外允许第三方访问您账户的控制面板的风险。

设置 SSO 提供商以启用控制面板共享

  1. 将 SSO 提供商与 集成Amazon Cognito。有关更多信息,请参阅将第三方 SAML Amazon Cognito身份提供商与用户池集成。

  2. 从您的 SSO 提供商下载元数据 XML 文件。

  3. 通过以下网址打开 CloudWatch 控制台:https://console.amazonaws.cn/cloudwatch/

  4. 在导航窗格中,选择 Settings

  5. Dashboard sharing (控制面板共享) 部分中,选择 Configure (配置)。

  6. 选择 Manage SSO providers 管理 SSO 提供商)。

    这将在弗吉尼亚北部 (us-east-1) 中打开 Amazon Cognito 控制台。如果您没有看到任何用户池,Amazon Cognito则控制台可能已在其他区域中打开。如果是这样的话,请将区域更改为美国东部(弗吉尼亚北部)us-east-1,然后继续执行后续步骤。

  7. 选择 CloudWatchDashboardSharing 池。

  8. 在导航窗格中,选择 Identity providers(身份提供商)。

  9. 选择 SAML

  10. 在 Provider name 中输入 SSO 提供商的名称

  11. 选择 Select file (选择文件),然后选择您在步骤 1 中下载的元数据 XML 文件。

  12. 选择创建提供商

使用日志表小部件共享控制面板

共享控制面板时,您可以选择是否使控制面板上的任何 CloudWatch Logs Insights 小部件对通过共享访问控制面板的人员可见。该选项会影响现在存在的CloudWatch Logs见解小部件以及在共享控制面板后添加到控制面板的任何小部件。

如果您选择允许共享CloudWatch Logs小部件, 会为 CloudWatch 角色IAM授予以下额外的权限以进行控制面板共享。默认情况下,这些权限将优先于账户中的所有日志组。

  • logs:FilterLogEvents

  • logs:StartQuery

  • logs:StopQuery

  • logs:GetLogRecord

为了提高安全性,您可以选择不在控制面板共享中包含CloudWatch Logs小部件,也可以修改用于控制面板共享IAM的角色以锁定敏感日志组,同时允许其他日志组在共享的控制面板中可见。要修改此IAM角色,请在共享控制面板后执行以下操作:

修改共享控制面板IAM的角色以锁定指定的日志组

  1. 通过以下网址打开 CloudWatch 控制台:https://console.amazonaws.cn/cloudwatch/

  2. 在导航窗格中,选择 Dashboards

  3. 选择共享控制面板的名称。

  4. 依次选择 Actions (操作) 和 Share dashboard (共享控制面板)。

  5. Resources (资源) 下,选择 IAM Role (IAM 角色)。

  6. 在 IAM 控制台中,选择显示的策略。

  7. 选择 Edit policy (编辑策略),然后添加具有 Deny 效果的语句,该语句列出了要锁定的日志组的 ARNs。请参阅以下 示例。

    { "Effect": "Deny", "Action": "*", "Resource": [ "LogGroup1ARN", "LogGroup2ARN" ] },
  8. 选择 Save Changes