

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

# 管理您的 Cloud Directory 资源的访问权限概述
<a name="iam_auth_access_accesscontrol_overview"></a>

每个 AWS 资源都归某个 AWS 账户所有，创建和访问资源的权限由权限策略进行管理。账户管理员可以向 IAM 身份 (即：用户、组和角色) 挂载权限策略，某些服务 (如 AWS Lambda) 也支持向资源挂载权限策略。

 

**注意**  
*账户管理员*（或管理员用户）是具有管理员权限的用户。有关更多信息，请参阅[IAM 用户指南](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html) 中的 *IAM 最佳实践*。

在授予权限时，您要决定谁获得权限，获得对哪些资源的权限，以及您允许对这些资源执行的具体操作。

**Topics**
+ [Cloud Directory 资源和操作](#iam_auth_access_creatingiampolicies)
+ [了解资源所有权](#iam_auth_access_accesscontrol_resourceowner)
+ [管理对资源的访问](#iam_auth_access_accesscontrol_managingaccess)
+ [指定策略元素：操作、效果、资源和委托人](#iam_auth_access_specifyingiampolicyactions)
+ [在策略中指定条件](#iam_auth_access_specifyingiampolicyconditions)

## Cloud Directory 资源和操作
<a name="iam_auth_access_creatingiampolicies"></a>

在 Cloud Directory 中，主要资源是目录和架构。这些资源具有关联的唯一 Amazon 资源名称 (ARN)，如下表所示。


****  

| **资源类型**  |  **ARN 格式**  | 
| --- | --- | 
| 目录 | `arn:aws:clouddirectory:{{region}}:{{account-id}}:directory/{{directory-id}}` | 
| Schema | arn:aws:clouddirectory:{{region}}:{{account-id}}:schema/{{schema-state}}/{{schema-name}} | 

有关架构状态和 ARN 的更多信息，请参阅[ARN 示例](https://docs.aws.amazon.com/clouddirectory/latest/APIReference/arns.html)中的*Amazon Cloud Directory API 参考*。

Cloud Directory 提供一组操作来处理相应资源。有关可用操作的列表，请参阅 [Amazon Cloud Directory 操作](https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_Operations.html)或 [ Directory Service 操作](https://docs.aws.amazon.com/directoryservice/latest/devguide/API_Operations.html)。

## 了解资源所有权
<a name="iam_auth_access_accesscontrol_resourceowner"></a>

*资源所有者* 是创建资源的 AWS 账户。也就是说，资源所有者是*委托人实体*（根账户、IAM 用户或 IAM 角色）的 AWS 账户。以下示例说明了它的工作原理：
+ 如果使用您的 AWS 账户的根账户凭证来创建 Cloud Directory 资源 (如目录)，则您的 AWS 账户就是该资源的拥有者。
+ 如果您在 AWS 账户中创建 IAM 用户并对该用户授予创建 Cloud Directory 资源的权限，则该用户也可以创建 Cloud Directory 资源。但是，该用户所属的 AWS 账户拥有这些 资源。
+ 如果您在 AWS 账户中创建具有创建 Cloud Directory 资源权限的 IAM 角色，则任何能够担任该角色的人都可以创建 Cloud Directory 资源。该角色所属的 AWS 账户拥有此 Cloud Directory 资源。

## 管理对资源的访问
<a name="iam_auth_access_accesscontrol_managingaccess"></a>

*权限策略* 规定谁可以访问哪些内容。下一节介绍创建权限策略时的可用选项。

**注意**  
本节讨论如何在 Cloud Directory 范围内使用 IAM。这里不提供有关 IAM 服务的详细信息。有关完整的 IAM 文档，请参阅[什么是 IAM？](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html)中的*IAM 用户指南*。有关 IAM 策略语法和说明的信息，请参阅[AWS IAM 策略参考](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies.html)中的*IAM 用户指南*。

附加到 IAM 身份的策略称作*基于身份的功能*策略（IAM 策略）和附加到资源的策略称作*基于资源的*策略。Cloud Directory 只支持基于身份的策略（IAM 策略）。

**Topics**
+ [基于身份的策略（IAM 策略）](#iam_auth_access_accesscontrol_managingaccess_identitybased)
+ [基于资源的策略](#iam_auth_access_accesscontrol_managingaccess_resourcebased)

### 基于身份的策略（IAM 策略）
<a name="iam_auth_access_accesscontrol_managingaccess_identitybased"></a>

您可以向 IAM 身份附加策略。例如，您可以执行以下操作：
+ **将权限策略附加到账户中的用户或组**— 账户管理员可以使用与特定用户关联的权限策略授予该用户创建 Cloud Directory 资源 (如新目录) 的权限。
+ **将权限策略附加到角色（授予跨账户权限）**— 您可以将基于身份的权限策略挂载到 IAM 角色，以授予跨账户的权限。例如，账户 A 中的管理员可以创建一个角色，以向其他 AWS 账户（如账户 B）或某项 AWS 服务授予跨账户权限，如下所述：

  1. 账户 A 管理员可以创建一个 IAM 角色，然后向该角色附加授予其访问账户 A 中资源的权限策略。

  1. 账户 A 管理员可以向将账户 B 标识为能够代入该角色的委托人的角色附加信任策略。

  1. 之后，账户 B 管理员可以委托权限，指派账户 B 中的任何用户代入该角色。这样，账户 B 中的用户就可以创建或访问账户 A 中的资源了。如果您需要授予 AWS 服务权限来代入该角色，则信任策略中的委托人也可以是 AWS 服务委托人。

   有关使用 IAM 委派权限的更多信息，请参阅[访问控制](https://docs.aws.amazon.com/IAM/latest/UserGuide/access.html)中的*IAM 用户指南*。

以下权限策略对用户授予权限以运行以 `Create` 开头的所有操作。这些操作显示有关 Cloud Directory 资源 (如目录或架构) 的信息。请注意，中的通配符 (\*)`Resource`元素表示可对该账户拥有的所有 Cloud Directory 资源执行操作。

```
 1. {
 2.    "Version":"2017-01-11",
 3.    "Statement":[
 4.       {
 5.          "Effect":"Allow",
 6.          "Action":"clouddirectory:Create*",
 7.          "Resource":"*"
 8.       }
 9.    ]
10. }
```

有关将基于身份的策略用于 Cloud Directory 的更多信息，请参阅[为 Cloud Directory 使用基于身份的策略（IAM 策略）](iam_auth_access_accesscontrol_identitybased.md)。有关用户、组、角色和权限的更多信息，请参阅[《IAM 用户指南》](https://docs.aws.amazon.com/IAM/latest/UserGuide/id.html) 中的*身份 (用户、组和角色)*。

### 基于资源的策略
<a name="iam_auth_access_accesscontrol_managingaccess_resourcebased"></a>

其他服务 (如 Amazon S3) 还支持基于资源的权限策略。例如，您可以将策略附加到 S3 存储桶以管理对该存储桶的访问权限。Cloud Directory 不支持基于资源的策略。

## 指定策略元素：操作、效果、资源和委托人
<a name="iam_auth_access_specifyingiampolicyactions"></a>

对于每个 Cloud Directory 资源（请参阅[Cloud Directory 资源和操作](#iam_auth_access_creatingiampolicies)），该服务定义了一组 API 操作。有关可用 API 操作的列表，请参阅[Amazon Cloud Directory 操作](https://docs.aws.amazon.com/clouddirectory/latest/APIReference/API_Operations.html)或者[Directory Service 操作](https://docs.aws.amazon.com/directoryservice/latest/devguide/API_Operations.html)。为授予这些 API 操作的权限，Cloud Directory 定义了一组您可以在策略中指定的操作。请注意，执行某项 API 操作可能需要执行多个操作的权限。

以下是基本的策略元素：
+ **资源**— 在策略中，您可以使用 Amazon 资源名称 (ARN) 标识策略应用到的资源。对于 Cloud Directory 资源，您随时可以在 IAM 策略中使用通配符 (\*)。有关更多信息，请参阅 [Cloud Directory 资源和操作](#iam_auth_access_creatingiampolicies)。
+ **操作** – 您可以使用操作关键字标识要允许或拒绝的资源操作。例如，`clouddirectory:GetDirectory`权限允许执行 Cloud Directory 的用户权限`GetDirectory`operation.
+ **Effect**— 您可以指定当用户请求特定操作（可以是允许或拒绝）时的效果。如果没有显式授予（允许）对资源的访问权限，则隐式拒绝访问。您也可显式拒绝对资源的访问，这样可确保用户无法访问该资源，即使有其他策略授予了访问权限的情况下也是如此。
+ **委托人** – 在基于身份的策略（IAM 策略）中，附加了策略的用户是隐式委托人。对于基于资源的策略，您可以指定要接收权限的用户、账户、服务或其他实体 (仅适用于基于资源的策略)。Cloud Directory 不支持基于资源的策略。

有关 IAM 策略语法和介绍的更多信息，请参阅[AWS IAM 策略参考](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies.html)中的*IAM 用户指南*。

有关显示所有 Amazon Cloud Directory API 操作及其适用资源的表，请参阅[Amazon Cloud Directory API 权限：API 权限：操作、资源和条件参考](iam_auth_access_usingwith_iam_resourcepermissions.md)。



## 在策略中指定条件
<a name="iam_auth_access_specifyingiampolicyconditions"></a>

当您授予权限时，可使用访问策略语言来指定规定策略何时生效的条件。例如，您可能希望策略仅在特定日期后应用。有关使用策略语言指定条件的更多信息，请参阅[Condition](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html)中的*IAM 用户指南*。

要表示条件，您可以使用预定义的条件键。没有特定于 Cloud Directory 的条件键。但有 AWS 范围内的条件密钥，您可以根据需要使用。有关 AWS 范围内的键的完整列表，请参阅[可用的全局条件键](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#AvailableKeys)中的*IAM 用户指南*。