本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
标记资源
标签是一种自定义元数据标签,您可以将其添加到资源中,以便更轻松地在搜索中识别、整理和查找。标签由两个独立部分组成:标签键和标签值。这被称为键值对。
标签键通常表示较大的类别,而标签值则表示该类别的子集。例如,您可能拥有标签键=颜色和标签值=蓝色,这样将生成键值对 Color:Blue
。请注意,您可以将标签的值设为空的字符串,但是不能将其设为空值。省略标签值与使用空字符串效果相同。
提示
AWS Billing and Cost Management 可以使用标签将账单分为动态类别。例如,如果您添加标签来代表公司内的不同部门,例如Department:Sales
或Department:Legal
, AWS 可以为您提供每个部门的成本分配。
In Amazon Transcribe,您可以为以下资源添加标签:
转录作业
医疗转录作业
自定义词汇表
自定义医学词汇表
自定义词汇表过滤器
自定义语言模型
标签键的长度最大可以为 128 个字符,标签值的长度最大可以为 256 个字符;两者均区分大小写。 Amazon Transcribe 每个资源最多支持 50 个标签。对于给定资源,每个标签键必须是唯一的,只有一个值。请注意,您的标签不能以开头,aws:
因为 AWS 为系统生成的标签保留此前缀。您无法添加、修改或删除aws:*
标签,它们也不会计入您的 tags-per-resource 限制。
API特定于资源标记的操作
ListTagsForResource
,
TagResource
,
UntagResource
要使用标记APIs,您必须在请求中附上 Amazon 资源名称 (ARN)。ARNs有格式arn:partition:service:region:account-id:resource-type/resource-id
。例如,与转录作业ARN相关的可能看起来像:arn:
。aws
:transcribe:us-west-2
:111122223333
:transcription-job/my-transcription-job-name
要了解有关标签的更多信息(包括最佳实践),请参阅添加标签 AWS 资源。
基于标签的访问控制
您可以使用标签来控制内部的访问权限 AWS 账户。 对于基于标签的访问控制,您可以在的条件元素中提供标签信息 IAM 政策。然后,您可以使用标签及其关联的标签条件键控制对以下内容的访问:
资源:控制对您的访问权限 Amazon Transcribe 资源基于您为这些资源分配的标签。
请使用
aws:ResourceTag/
条件键指定必须将哪个标签键值对附加到资源。key-name
请求:控制哪些标签可以传入请求。
使用
aws:RequestTag/
条件键指定可以添加、修改或从中删除哪些标签 IAM 用户或角色。key-name
授权流程:控制授权过程任何部分的基于标签的访问权限。
使用
aws:TagKeys/
条件键控制是否可以在资源或请求中或者由主体使用特定标签键。在这种情况下,键值无关紧要。
有关基于标签的访问控制策略的示例,请参阅基于标签查看转录任务。
有关基于标签的访问控制的更多详细信息,请参阅控制对标签的访问权限 AWS 使用标签的资源。
将标签添加到你的 Amazon Transcribe 资源
你可以在运行之前或之后添加标签 Amazon Transcribe 工作。使用现有的 Create* 和 Start*APIs,您可以在转录请求中添加标签。
您可以使用添加、修改或删除标签 AWS Management Console, AWS CLI,或者 AWS SDKs; 有关示例,请参阅以下内容:
-
在导航窗格中,选择转录作业,然后选择创建作业(右上角)。这将打开指定作业详细信息页面。
-
滚动到指定作业详细信息页面底部,找到标签 - 可选框,然后选择添加新标签。
-
在键字段和(可选)值字段中输入信息。
-
在指定作业详细信息页面上填写要包含的任何其它字段,然后选择下一步。此时您将会看到配置作业 - 可选页面。
选择创建作业以运行您的转录作业。
-
您可以通过导航到转录作业页面,选择转录作业,然后滚动到该作业信息页面的底部,来查看与转录作业相关的标签。如果要编辑标签,可以选择管理标签。
此示例使用start-transcription-jobTags
参数。有关更多信息,请参阅StartTranscriptionJob
和Tag
。
aws transcribe start-transcription-job \ --region
us-west-2
\ --transcription-job-namemy-first-transcription-job
\ --media MediaFileUri=s3://DOC-EXAMPLE-BUCKET
/my-input-files
/my-media-file
.flac
\ --output-bucket-nameDOC-EXAMPLE-BUCKET
\ --output-keymy-output-files
/ \ --language-codeen-US
\ --tags Key=color
,Value=blue
Key=shape
,Value=square
以下是另一个使用start-transcription-job
aws transcribe start-transcription-job \ --region
us-west-2
\ --cli-input-json file://filepath
/my-first-tagging-job.json
my-first-tagging-job.json 文件包含以下请求正文。
{ "TranscriptionJobName": "
my-first-transcription-job
", "Media": { "MediaFileUri": "s3://DOC-EXAMPLE-BUCKET
/my-input-files
/my-media-file
.flac
" }, "OutputBucketName": "DOC-EXAMPLE-BUCKET
", "OutputKey": "my-output-files
/", "LanguageCode": "en-US
", "Tags": [ { "Key": "color
", "Value": "blue
" }, { "Key": "shape
", "Value": "square
" } ] }
以下示例使用 AWS SDK for Python (Boto3) 使用 start_transcription_ Tags
StartTranscriptionJob
和Tag
。
有关其他示例,请使用 AWS SDKs,包括特定功能、场景和跨服务示例,请参阅本章。使用 Amazon Transcribe 的代码示例 AWS SDKs
from __future__ import print_function import time import boto3 transcribe = boto3.client('transcribe', '
us-west-2
') job_name = "my-first-transcription-job
" job_uri = "s3://DOC-EXAMPLE-BUCKET
/my-input-files
/my-media-file
.flac
" transcribe.start_transcription_job( TranscriptionJobName = job_name, Media = { 'MediaFileUri': job_uri }, OutputBucketName = 'DOC-EXAMPLE-BUCKET
', OutputKey = 'my-output-files
/', LanguageCode = 'en-US
', Tags = [ { 'Key':'color
', 'Value':'blue
' } ] ) while True: status = transcribe.get_transcription_job(TranscriptionJobName = job_name) if status['TranscriptionJob']['TranscriptionJobStatus'] in ['COMPLETED', 'FAILED']: break print("Not ready yet...") time.sleep(5) print(status)