为 Systems Manager Explorer 配置角色和权限 - AWS Systems Manager

为 Systems Manager Explorer 配置角色和权限

集成设置可自动为 AWS Systems Manager Explorer 和 AWS Systems Manager OpsCenter 创建及配置 AWS Identity and Access Management(IAM)角色。如果您完成了集成设置,则不需要执行任何其他任务以便为 Explorer 配置角色和权限。不过,您必须为 OpsCenter 配置权限,如本主题后面所述。

集成设置创建和配置以下角色以使用 Explorer 和 OpsCenter。

  • AWSServiceRoleForAmazonSSM:提供对由 Systems Manager 管理或使用的 AWS 资源的访问权限。

  • OpsItem-CWE-Role:允许 CloudWatch Events 和 EventBridge 创建 OpsItems 以响应常见事件。

  • AWSServiceRoleForAmazonSSM_AccountDiscovery:允许 Systems Manager 调用其他 AWS 服务,以便在同步数据时发现 AWS 账户 信息。有关该角色的更多信息,请参阅 使用角色为 OpsCenter 和 Explorer 收集 AWS 账户 信息

  • AmazonSSMExplorerExport:允许 Explorer 将 OpsData 导出到逗号分隔值 (CSV) 文件。

如果将 Explorer 配置为使用 AWS Organizations 和资源数据同步显示多个账户和区域中的数据,则 Systems Manager 将创建 AWSServiceRoleForAmazonSSM_AccountDiscovery 服务相关角色。Systems Manager 使用此角色在 AWS Organizations 中获取有关 AWS 账户 的信息。该角色使用以下权限策略。

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "organizations:DescribeAccount", "organizations:DescribeOrganization", "organizations:ListAccounts", "organizations:ListAWSServiceAccessForOrganization", "organizations:ListChildren", "organizations:ListParents" ], "Resource":"*" } ] }

有关 AWSServiceRoleForAmazonSSM_AccountDiscovery 角色的更多信息,请参阅 使用角色为 OpsCenter 和 Explorer 收集 AWS 账户 信息

为 Systems Manager OpsCenter 配置权限

在完成集成设置后,您必须配置用户、组或角色权限,以便用户能在 OpsCenter 中执行操作。

开始前的准备工作

您可以将 OpsCenter 配置为仅为单个账户或跨多个账户创建和管理 OpsItems。如果您将 OpsCenter 配置为跨多个账户创建和管理 OpsItems,则您可以使用 Systems Manager 委派的管理员账户或 AWS Organizations 管理账户在其他账户中手动创建、查看或编辑 OpsItems。有关 Systems Manager 委派管理员账户的更多信息,请参阅 为 Explorer 配置委派管理员

如果您为单个账户配置 OpsCenter,则您只能在创建 OpsItems 的账户中查看或编辑 OpsItems。您无法跨 AWS 账户共享或传输 OpsItems。因此,我们建议您在用于运行 AWS 工作负载的 AWS 账户中为 OpsCenter 配置权限。然后,您可以在该账户中创建用户或组。这样一来,多个运营工程师或 IT 专业人员便能在同一个 AWS 账户中创建、查看和编辑 OpsItems。

Explorer 和 OpsCenter 使用以下 API 操作。如果您的用户、组或角色拥有访问这些操作的权限,您可以使用 Explorer 和 OpsCenter 的所有功能。您还可以创建更严格的访问权限,如本节后面所述。

如果您愿意,可以通过将以下内联策略添加到您的账户、组或角色来指定只读权限。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:GetOpsItem", "ssm:GetOpsSummary", "ssm:DescribeOpsItems", "ssm:GetServiceSetting", "ssm:ListResourceDataSync" ], "Resource": "*" } ] }

有关创建和编辑 IAM policy的更多信息,请参阅《IAM 用户指南》中的创建 IAM policy。有关如何将此策略分配给 IAM 组的信息,请参阅将策略附加到 IAM 组

使用以下内容创建权限,并将该权限添加到您的用户、组或角色:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:GetOpsItem", "ssm:UpdateOpsItem", "ssm:DescribeOpsItems", "ssm:CreateOpsItem", "ssm:CreateResourceDataSync", "ssm:DeleteResourceDataSync", "ssm:ListResourceDataSync", "ssm:UpdateResourceDataSync" ], "Resource": "*" } ] }

根据您在组织中使用的身份应用程序,您可选择以下任何选项来配置用户访问权限。

要提供访问权限,请为您的用户、组或角色添加权限:

通过使用标签限制对 OpsItems 的访问

您还可以通过使用指定标签的内联 IAM policy 来限制对 OpsItems 的访问。以下是一个指定 Department 标签键和 Finance 标签值的示例。利用此策略,用户只能调用 GetOpsItem API 操作,来查看之前已用键 Department 和值 Finance 标记的 OpsItems。用户无法查看任何其他 OpsItems。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:GetOpsItem" ], "Resource": "*" , "Condition": { "StringEquals": { "ssm:resourceTag/Department": "Finance" } } } ] }

以下是一个指定用于查看和更新 OpsItems 的 API 操作的示例。此策略还指定了两组标签键/值对:Department-Finance 和 Project-Unity。

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "ssm:GetOpsItem", "ssm:UpdateOpsItem" ], "Resource":"*", "Condition":{ "StringEquals":{ "ssm:resourceTag/Department":"Finance", "ssm:resourceTag/Project":"Unity" } } } ] }

有关向 OpsItem 添加标签的更多信息,请参阅 手动创建 OpsItems