

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

# Amazon Textract 如何与 IAM 配合使用
<a name="security_iam_service-with-iam"></a>

在使用 IAM 管理对 Amazon Textract 的访问权限之前，您应该了解哪些 IAM 功能可用于 Amazon Textract。要高级了解 Amazon Textract 和其他方式AWS使用 IAM 的服务，请参阅[AWS使用 IAM 的 IAM 服务](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html)中的*IAM 用户指南*.

**Topics**
+ [Amazon Textract 基于身份的策略](#security_iam_service-with-iam-id-based-policies)
+ [Amazon Textract 基于资源的策略](#security_iam_service-with-iam-resource-based-policies)
+ [基于 Amazon Textract 的标签的授权](#security_iam_service-with-iam-tags)
+ [Amazon Textract IAM 角色](#security_iam_service-with-iam-roles)

## Amazon Textract 基于身份的策略
<a name="security_iam_service-with-iam-id-based-policies"></a>

通过使用 IAM 基于身份的策略，您可以指定允许或拒绝的操作和资源以及允许或拒绝操作的条件。Amazon Textract 支持特定的操作、资源和条件键。要了解在 JSON 策略中使用的所有元素，请参阅 *IAM 用户指南* 中的 [IAM JSON 策略元素参考](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html)。

### 操作
<a name="security_iam_service-with-iam-id-based-policies-actions"></a>

管理员可以使用 AWS JSON 策略来指定谁有权访问什么内容。也就是说，哪个**委托人** 可以对什么**资源** 执行**操作**，以及在什么 **条件** 下执行。

JSON 策略的 `Action` 元素描述可用于在策略中允许或拒绝访问的操作。策略操作通常与关联的 AWS API 操作同名。有一些例外情况，例如没有匹配 API 操作的*仅限权限* 操作。还有一些操作需要在策略中执行多个操作。这些附加操作称为*相关操作*。

在策略中包含操作以授予执行相关操作的权限。

Amazon Textract 中的异步操作需要授予两个操作权限，一个用于开始操作，另一个用于获取操作。此外，如果您使用 Amazon S3 存储桶传递文档，则需要授予账户读取访问权限。

在 Amazon Textract 中，所有政策操作都以：`textract:`. 例如，要授予某人使用 Amazon Textract 操作的权限。`AnalyzeDocument`操作，你包括`textract:AnalyzeDocument`他们的政策中的行动。策略语句必须包含 `Action` 或 `NotAction` 元素。Amazon Textract 定义了一组自己的操作，以描述您可以使用该服务执行的任务。

要在单个语句中指定多项操作，请使用逗号将它们隔开，如下所示。

```
"Action": [
      "textract:action1",
      "textract:action2"
```

您也可以使用通配符 (\*) 指定多个操作。例如，要指定以单词 `Describe` 开头的所有操作，请包括以下操作。

```
"Action": "textract:Describe*"
```



有关 Amazon Textract 操作的列表，请参阅[Amazon Textract 定义的操作](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazontextract.html#amazontextract-actions-as-permissions)中的*IAM 用户指南*.

### Resources（资源）
<a name="security_iam_service-with-iam-id-based-policies-resources"></a>

管理员可以使用 AWS JSON 策略来指定谁有权访问什么内容。也就是说，哪个**委托人**可以对什么**资源**执行**操作**，以及在什么**条件**下执行。

`Resource` JSON 策略元素指定要向其应用操作的一个或多个对象。语句必须包含 `Resource` 或 `NotResource` 元素。作为最佳实践，请使用其 [Amazon Resource Name（ARN）](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html)指定资源。对于支持特定资源类型（称为*资源级权限*）的操作，您可以执行此操作。

对于不支持资源级权限的操作（如列出操作），请使用通配符 (\*) 指示语句应用于所有资源。

```
"Resource": "*"
```

Amazon Textract 不支持在策略中指定资源 ARN。

### 条件键
<a name="security_iam_service-with-iam-id-based-policies-conditionkeys"></a>

管理员可以使用 AWS JSON 策略来指定谁有权访问什么内容。也就是说，哪个**委托人**可以对什么**资源**执行**操作**，以及在什么**条件**下执行。

在 `Condition` 元素（或 `Condition` *块*）中，可以指定语句生效的条件。`Condition` 元素是可选的。您可以创建使用[条件运算符](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html)（例如，等于或小于）的条件表达式，以使策略中的条件与请求中的值相匹配。

如果您在一个语句中指定多个 `Condition` 元素，或在单个 `Condition` 元素中指定多个键，则 AWS 使用逻辑 `AND` 运算评估它们。如果您为单个条件键指定多个值，则 AWS 使用逻辑 `OR` 运算来评估条件。在授予语句的权限之前必须满足所有的条件。

 在指定条件时，您也可以使用占位符变量。例如，只有在使用 IAM 用户名标记 IAM 用户时，您才能为其授予访问资源的权限。有关更多信息，请参阅 *IAM 用户指南* 中的 [IAM 策略元素：变量和标签](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_variables.html)。

AWS支持全局条件键和特定于服务的条件键。要查看所有 AWS 全局条件键，请参阅 *IAM 用户指南*中的 [AWS 全局条件上下文键](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html)。

Amazon Textract 不提供任何服务特定的条件键，但支持使用某些全局条件键。所有列表AWS全局条件键，请参阅[AWS全局条件上下文键](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html)中的*IAM 用户指南*.

### 示例
<a name="security_iam_service-with-iam-id-based-policies-examples"></a>



要查看 Amazon Textract 基于身份的策略的示例，请参阅。[Amazon Textract 基于身份的策略示例](security_iam_id-based-policy-examples.md).

## Amazon Textract 基于资源的策略
<a name="security_iam_service-with-iam-resource-based-policies"></a>

Amazon Textract 不支持基于资源的策略。

## 基于 Amazon Textract 的标签的授权
<a name="security_iam_service-with-iam-tags"></a>

Amazon Textract 不支持标记资源或基于标签的访问控制。

## Amazon Textract IAM 角色
<a name="security_iam_service-with-iam-roles"></a>

[IAM 角色](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html)是 AWS 账户中具有特定权限的实体。

### 将临时凭证用于 Amazon Textract
<a name="security_iam_service-with-iam-roles-tempcreds"></a>

您可以使用临时凭证进行联合身份登录，担任 IAM 角色或担任跨账户角色。您可以通过调用 AWS STS API 操作（如 [AssumeRole](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html) 或 [GetFederationToken](https://docs.aws.amazon.com/STS/latest/APIReference/API_GetFederationToken.html)）获得临时安全凭证。

Amazon Textract 支持使用临时凭证。

### 服务相关角色
<a name="security_iam_service-with-iam-roles-service-linked"></a>

[服务相关角色](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-linked-role)允许 AWS 服务访问其它服务中的资源以代表您完成操作。服务相关角色显示在您的 IAM 账户中，并归该服务所有。IAM 管理员可以查看但不能编辑服务相关角色的权限。

Amazon Textract 不支持服务相关角色。

**注意**  
由于 Amazon Textract 不支持服务相关角色，它不支持 AWS 服务委托人。有关服务主体的更多信息，请参阅。[AWS 服务委托人](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html#principal-services)中的*IAM 用户指南*

### 服务角色
<a name="security_iam_service-with-iam-roles-service"></a>

此功能允许服务代表您担任[服务角色](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-role)。此角色允许服务访问其它服务中的资源以代表您完成操作。服务角色显示在您的 IAM 账户中，并归该账户所有。这意味着，IAM 管理员可以更改该角色的权限。但是，这样做可能会中断服务的功能。

Amazon Textract 支持服务角色。