

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

# 授予对资源管理器视图的访问权限以进行搜索
<a name="manage-views-grant-access"></a>

您必须先授予对 AWS 资源探索器 视图的访问权限，然后才能使用新视图进行搜索。为此，请对需要使用视图进行搜索的 AWS Identity and Access Management（IAM）主体使用基于身份的权限策略。

要提供访问权限，请为您的用户、组或角色添加权限：
+ AWS IAM Identity Center 中的用户和组：

  创建权限集合。按照《AWS IAM Identity Center 用户指南》中 [创建权限集](https://docs.aws.amazon.com/singlesignon/latest/userguide/howtocreatepermissionset.html)** 的说明进行操作。
+ 通过身份提供商在 IAM 中托管的用户：

  创建适用于身份联合验证的角色。按照《IAM 用户指南**》中[为第三方身份提供商创建角色（联合身份验证）](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-idp.html)的说明进行操作。
+ IAM 用户：
  + 创建您的用户可以担任的角色。按照《IAM 用户指南**》中[为 IAM 用户创建角色](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user.html)的说明进行操作。
  + （不推荐使用）将策略直接附加到用户或将用户添加到用户组。按照《IAM 用户指南**》中[向用户添加权限（控制台）](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users_change-permissions.html#users_change_permissions-add-console)中的说明进行操作。

您可以使用以下方法之一：
+ **使用现有的 AWS 托管策略**。资源管理器提供了多个预定义的 AWS 托管策略供您使用。有关所有可用的 AWS 托管策略的详细信息，请参阅 [AWS 的托管策略 AWS 资源探索器](security_iam_awsmanpol.md)。

  例如，您可以使用 `AWSResourceExplorerReadOnlyAccess` 策略向账户中的所有视图授予搜索权限。
+ **创建自己的权限策略并将其分配给主体**。如果您创建自己的策略，则可以通过在策略声明的 `Resource` 元素中指定每个视图的 [Amazon 资源名称（ARN）](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html)来限制对单个视图或可用视图子集的访问权限。例如，您可以使用以下示例策略授予该主体仅使用该视图进行搜索的能力。

  ```
  {
      "Version": "2012-10-17",
      "Statement": [
          {
              "Effect": "Allow",
              "Action": [
                  "resource-explorer-2:Search",
                  "resource-explorer-2:GetView"
              ],
              "Resource": "arn:aws:resource-explorer-2:us-east-1:123456789012:view/MyTestView/1a2b3c4d-5d6e-7f8a-9b0c-abcd11111111
          }
      ]
  }
  ```

  使用 IAM 控制台创建权限策略，并将其与需要这些权限的主体结合使用。有关 IAM 权限策略的更多信息，请参阅以下主题：
  + [IAM 中的策略和权限](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html)
  +  [添加和移除 IAM 身份权限](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html)
  + [了解策略授予的权限](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_understand.html)

## 使用基于标签的授权来控制对视图的访问权限
<a name="manage-views-grant-access-abac"></a>

如果您选择使用仅返回包含特定资源的结果的筛选条件创建多个视图，则可能还需要将这些视图的访问权限仅限制给需要查看这些资源的主体。您可以使用[基于属性的访问控制（ABAC）](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction_attribute-based-access-control.html)策略为账户中的视图提供此类安全保护。ABAC 使用的*属性*是附加到尝试在 AWS 中执行操作的主体和他们尝试访问的资源的标签。

ABAC 使用附加到主体的标准 IAM 权限策略。这些策略使用策略声明中的 `Condition` 元素，仅当附加到请求主体的标签和附加到受影响资源的标签都符合策略要求时才允许访问。

例如，您可以为支持公司生产应用程序的所有 AWS 资源添加标签 `"Environment" = "Production"`。为确保只有有权访问生产环境的主体才能看到这些资源，请创建一个使用将该标签用作[筛选条件](using-search-query-syntax.md#query-syntax-filters)的资源管理器视图。然后，要将视图的访问权限仅限制给相应的主体，您可以使用条件类似于以下示例元素的策略来授予权限。

```
{
    "Effect": "Allow",
    "Action": [ "service:Action1", "service:Action2" ],
    "Resource": "arn:aws:arn-of-a-resource",
    "Condition": { "StringEquals": {"aws:ResourceTag/Environment": "${aws:PrincipalTag/Environment}"} }
}
```

前面的示例中的该 `Condition` 规定，***只有***当附加到进行请求的主体的 `Environment` 标签与附加到请求中指定的资源的 `Environment` 标签相匹配时，才允许该请求。如果这两个标签不完全匹配，或者缺少任何一个标签，资源管理器都会拒绝该请求。

**重要**  
要成功使用 ABAC 来保护对资源的访问，您必须首先限制对附加到主体和资源的标签进行添加或修改的权限。如果用户可以添加或修改附加到 AWS 主体或资源的标签，则该用户可能会影响受这些标签控制的权限。在安全的 ABAC 环境中，只有经批准的安全管理员才有权添加或修改附加到主体的标签，并且只有安全管理员和资源拥有者才能添加或修改附加到资源的标签。

有关如何成功实施 ABAC 策略的更多信息，请参阅《IAM 用户指南》**中的下列主题：
+ [IAM 教程：根据标签定义访问 AWS 资源的权限](https://docs.aws.amazon.com/IAM/latest/UserGuide/tutorial_attribute-based-access-control.html)
+ [使用标签控制对 AWS 资源的访问权限](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_tags.html)

准备好必要的 ABAC 基础设施后，您可以使用开始使用标签来控制谁可以使用您账户中的资源管理器视图进行搜索。有关说明该原则的示例策略，请参阅下面的示例权限策略：
+ [根据标签授予对视图的访问权限](security_iam_id-based-policy-examples.md#security_iam_id-based-policy-examples-abac-views)
+ [授予根据标签创建视图的访问权限](security_iam_id-based-policy-examples.md#security_iam_id-based-policy-examples-abac-createview)