Amazon Transcribe Identity-Based Policy Examples - Amazon Transcribe
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

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

Amazon Transcribe Identity-Based Policy Examples

默认情况下,IAM 用户和角色没有创建或修改 Amazon Transcribe 资源的权限。它们还无法使用 AWS 管理控制台、AWS CLI 或 AWS API 执行任务。IAM 管理员必须创建 IAM 策略来向用户和角色授予权限,以便对他们所需的资源执行特定的 API 操作。然后,管理员必须将这些策略附加到需要这些权限的 IAM 用户或组。

学习如何创建 IAM 基于身份的策略使用这些示例JSON策略文档,请参阅 在JSON选项卡上创建策略IAM 用户指南.

Policy Best Practices

基于身份的策略非常强大。它们确定某个人是否可以创建、访问或删除您账户中的 Amazon Transcribe 资源。这些操作可能会使 AWS 账户产生成本。创建或编辑基于身份的策略时,请遵循以下准则和建议:

  • 开始使用 AWS 托管策略 – 要快速开始使用 Amazon Transcribe,请使用 AWS 托管策略,为您的员工授予他们所需的权限。这些策略已在您的账户中提供,并由 AWS 维护和更新。有关更多信息,请参阅 IAM 用户指南 中的利用 AWS 托管策略开始使用权限

  • 授予最低权限 – 创建自定义策略时,仅授予执行任务所需的许可。最开始只授予最低权限,然后根据需要授予其他权限。这样做比起一开始就授予过于宽松的权限而后再尝试收紧权限来说更为安全。有关更多信息,请参阅 IAM 用户指南 中的授予最小权限

  • 为敏感操作启用 MFA – 为增强安全性,要求 IAM 用户使用多重身份验证 (MFA) 来访问敏感资源或 API 操作。有关更多信息,请参阅 IAM 用户指南 中的在 AWS 中使用多重身份验证 (MFA)

  • 使用策略条件来增强安全性 – 在切实可行的范围内,定义基于身份的策略在哪些情况下允许访问资源。例如,您可编写条件来指定请求必须来自允许的 IP 地址范围。您也可以编写条件,以便仅允许指定日期或时间范围内的请求,或者要求使用 SSL 或 MFA。有关更多信息,请参阅 IAM 用户指南 中的 IAM JSON 策略元素:Condition

Using the Amazon Transcribe Console

要访问 Amazon Transcribe 控制台,您必须拥有一组最低的控制台权限。这些权限必须允许您列出和查看有关您的 AWS 账户中的 Amazon Transcribe 资源的详细信息。如果创建应用比必需的最低权限更为严格的权限的基于身份的策略,则对于附加了该策略的实体(IAM 用户或角色),控制台将无法按预期正常运行。

为确保这些实体可使用 Amazon Transcribe 控制台,也可向其附加以下 AWS 托管策略。

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "transcribe:*" ], "Resource": "*", "Effect": "Allow" } ] }

对于仅调用 AWS CLI 或 AWS API 的用户,您不需要允许最低控制台权限。相反,只允许访问与您尝试执行的 API 操作相匹配的操作。

有关详细信息,请参阅 向用户添加权限IAM 用户指南:

AWS Managed (Predefined) Policies for Amazon Transcribe

AWS 通过提供由 AWS 创建和管理的独立 IAM 策略,满足许多常用案例的要求。这些策略称为 AWS 托管策略。与必须自己编写策略相比,通过托管策略可以更轻松地将适当的权限分配给用户、组和角色。有关更多信息,请参阅 IAM 用户指南 中的 AWS 托管策略

以下 AWS 托管策略(可附加到账户中的用户、角色和组) 特定于 Amazon Transcribe:

  • ReadOnly – Grants read-only access to Amazon Transcribe resources so that you can get and list transcription jobs and custom vocabularies.

  • FullAccess – Grants full access to create, read, update, delete, and run all Amazon Transcribe resources. It also allows access to Amazon Simple Storage Service (Amazon S3) buckets with transcribe in the bucket name.

注意

您可以通过登录到 IAM 控制台并按策略名称搜索来查看托管权限策略。

您还可以创建自己的自定义 IAM 策略,以授予执行 Amazon Transcribe API 操作的相关权限。您可以将这些自定义策略附加到需要这些权限的 IAM 用户、角色或组。

Permissions Required for IAM User Roles

在创建一个 IAM 用户来调用 Amazon Transcribe 时,身份必须有权访问 S3 存储桶以及用于加密该存储桶内容的 AWS Key Management Service (AWS KMS) 密钥(如果已提供)。

该用户必须具有以下 IAM 策略来解密 KMS Amazon 资源名称 (ARN) 的权限。

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "kms:Decrypt" ], "Resource": "KMS key ARN", "Effect": "Allow" } ] }

用户的 IAM 策略必须具有 Amazon S3 权限才能访问用于存储音频文件和转录内容的 S3 存储桶。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ “s3:GetObject”, ], "Resource": "S3 bucket location" } ] }

Permissions Required for Amazon S3 Encryption Keys

如果您使用 AWS KMS 密钥对 Amazon S3 存储桶进行加密,请在 AWS KMS 密钥策略中包含以下内容。这将向 Amazon Transcribe 提供对存储桶内容的访问权。

{ "Sid": "Allow-Transcribe", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::account id:root", }, "Action": [ "kms:Decrypt" ], "Resource": "KMS key ARN" }

有关允许访问客户主密钥的更多信息,请参阅 允许外部AWS帐户访问CMKAWS KMS Developer Guide.

Allow Users to View Their Own Permissions

此示例显示您可以如何创建策略,以便允许 IAM 用户查看附加到其用户身份的内联和托管策略。此策略包括在控制台上完成此操作或者以编程方式使用 AWS CLI 或 AWS API 所需的权限。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "ViewOwnUserInfo", "Effect": "Allow", "Action": [ "iam:GetUserPolicy", "iam:ListGroupsForUser", "iam:ListAttachedUserPolicies", "iam:ListUserPolicies", "iam:GetUser" ], "Resource": ["arn:aws-cn:iam::*:user/${aws:username}"] }, { "Sid": "NavigateInConsole", "Effect": "Allow", "Action": [ "iam:GetGroupPolicy", "iam:GetPolicyVersion", "iam:GetPolicy", "iam:ListAttachedGroupPolicies", "iam:ListGroupPolicies", "iam:ListPolicyVersions", "iam:ListPolicies", "iam:ListUsers" ], "Resource": "*" } ] }