Amazon Lex 的操作、资源和条件键 - 服务授权参考

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

Amazon Lex 的操作、资源和条件键

Amazon Lex(服务前缀:lex)提供以下服务特定的资源、操作和条件上下文键以在 IAM 权限策略中使用。

参考:

Amazon Lex 定义的操作

您可以在 IAM 策略语句的 Action 元素中指定以下操作。可以使用策略授予在 AWS中执行操作的权限。您在策略中使用一项操作时,通常使用相同的名称允许或拒绝对 API 操作或 CLI 命令的访问。但在某些情况下,单一动作可控制对多项操作的访问。还有某些操作需要多种不同的动作。

操作表的资源类型列指示每项操作是否支持资源级权限。如果该列没有任何值,您必须在策略语句的 Resource 元素中指定策略应用的所有资源(“*”)。通过在 IAM policy 中使用条件来筛选访问权限,以控制是否可以在资源或请求中使用特定标签键。如果操作具有一个或多个必需资源,则调用方必须具有使用这些资源来使用该操作的权限。必需资源在表中以星号 (*) 表示。如果您在 IAM policy 中使用 Resource 元素限制资源访问权限,则必须为每种必需的资源类型添加 ARN 或模式。某些操作支持多种资源类型。如果资源类型是可选的(未指示为必需),则可以选择使用一种可选资源类型。

操作表的条件键列包括可以在策略语句的 Condition 元素中指定的键。有关与服务资源关联的条件键的更多信息,请参阅资源类型表的条件键列。

注意

资源条件键在资源类型表中列出。您可以在操作表的资源类型(* 为必需)列中找到应用于某项操作的资源类型的链接。资源类型表中的资源类型包括条件密钥列,这是应用于操作表中操作的资源条件键。

有关下表中各列的详细信息,请参阅操作表

操作 描述 访问级别 资源类型(* 为必需) 条件键 相关操作
CreateBotVersion 基于指定机器人的 $LATEST 版本创建新版本 写入

bot version*

CreateIntentVersion 基于指定目的的 $LATEST 版本创建新版本 写入

intent version*

CreateSlotTypeVersion 基于指定槽类型的 $LATEST 版本创建新版本 写入

slottype version*

DeleteBot 删除机器人的所有版本 写入

bot version*

DeleteBotAlias 删除特定机器人的别名 写入

bot alias*

DeleteBotChannelAssociation 删除 Amazon Lex 机器人别名和消息收发平台之间的关联 写入

channel*

DeleteBotVersion 删除机器人的特定版本 写入

bot version*

DeleteIntent 删除目的的所有版本 写入

intent version*

DeleteIntentVersion 删除目的的特定版本 写入

intent version*

DeleteSession 删除指定机器人、别名和用户 ID 的会话信息 写入

bot alias

bot version

DeleteSlotType 删除槽类型的所有版本 写入

slottype version*

DeleteSlotTypeVersion 删除槽类型的特定版本 写入

slottype version*

DeleteUtterances 删除 Amazon Lex 为有关特定机器人和 userId 的表达保留的信息 写入

bot version*

GetBot 返回特定机器人的信息。除了机器人名称外,还需要机器人版本或别名 读取

bot alias

bot version

GetBotAlias 返回有关 Amazon Lex 机器人别名的信息 读取

bot alias*

GetBotAliases 返回给定 Amazon Lex 机器人的别名列表 列出
GetBotChannelAssociation 返回有关 Amazon Lex 机器人和消息收发平台之间的关联的信息 读取

channel*

GetBotChannelAssociations 返回与单个机器人关联的所有通道的列表 列出

channel*

GetBotVersions 返回特定机器人的所有版本的信息 列出

bot version*

GetBots 返回所有机器人的 $LATEST 版本的信息,具体取决于客户端所提供的筛选条件 列出
GetBuiltinIntent 返回有关内置目的的信息 读取
GetBuiltinIntents 获取符合指定条件的内置目的的列表 读取
GetBuiltinSlotTypes 获取符合指定条件的内置槽类型的列表 读取
GetExport 以请求的格式导出 Amazon Lex 资源 读取

bot version*

GetImport 获取有关以开头的导入任务的信息 StartImport 读取
GetIntent 返回特定目的的信息。除了目的名称外,您还必须指定目的版本 读取

intent version*

GetIntentVersions 返回特定目的的所有版本的信息 列出

intent version*

GetIntents 返回所有目的的 $LATEST 版本的信息,具体取决于客户端所提供的筛选条件 列出
GetMigration 授予权限以查看正在执行的或已完成的迁移 读取
GetMigrations 授予查看从 Amazon Lex v1 到 Amazon Lex v2 迁移列表的权限 列出
GetSession 返回指定机器人、别名和用户 ID 的会话信息 读取

bot alias

bot version

GetSlotType 返回有关槽类型的特定版本的信息。除了指定槽类型名称外,您还必须指定槽类型版本 读取

slottype version*

GetSlotTypeVersions 返回特定槽类型的所有版本的信息 列出

slottype version*

GetSlotTypes 返回所有槽类型的 $LATEST 版本的信息,具体取决于客户端所提供的筛选条件 列出
GetUtterancesView 返回机器人在最近时间段的版本的聚合表达数据的视图 列出

bot version*

ListTagsForResource 列出 Lex 资源的标签 读取

bot

bot alias

channel

PostContent 将用户输入(文本或语音)发送到 Amazon Lex 写入

bot alias

bot version

PostText 将用户输入(仅文本)发送到 Amazon Lex 写入

bot alias

bot version

PutBot 创建或更新 Amazon Lex 对话机器人的 $LATEST 版本 写入

bot version*

aws:TagKeys

aws:RequestTag/${TagKey}

PutBotAlias 创建或更新特定机器人的别名 写入

bot alias*

aws:TagKeys

aws:RequestTag/${TagKey}

PutIntent 创建或更新目的的 $LATEST 版本 写入

intent version*

PutSession 使用 Amazon Lex 机器人创建新会话或修改现有会话 写入

bot alias

bot version

PutSlotType 创建或更新槽类型的 $LATEST 版本 写入

slottype version*

StartImport 启动任务以将资源导入到 Amazon Lex 中 写入
StartMigration 授予查看从 Amazon Lex v1 到 Amazon Lex v2 迁移 bot 的权限 写入

bot version*

TagResource 在 Lex 资源中添加或覆盖标签 Tagging

bot

bot alias

channel

aws:TagKeys

aws:RequestTag/${TagKey}

UntagResource 从 Lex 资源中删除标签 Tagging

bot

bot alias

channel

aws:TagKeys

aws:RequestTag/${TagKey}

Amazon Lex 定义的资源类型

以下资源类型是由该服务定义的,可以在 IAM 权限策略语句的 Resource 元素中使用这些资源类型。操作表中的每个操作指定了可以使用该操作指定的资源类型。您也可以在策略中包含条件键,从而定义资源类型。这些键显示在资源类型表的最后一列。有关下表中各列的详细信息,请参阅资源类型表

资源类型 ARN 条件键
bot arn:${Partition}:lex:${Region}:${Account}:bot:${BotName}

aws:ResourceTag/${TagKey}

bot version arn:${Partition}:lex:${Region}:${Account}:bot:${BotName}:${BotVersion}

aws:ResourceTag/${TagKey}

bot alias arn:${Partition}:lex:${Region}:${Account}:bot:${BotName}:${BotAlias}

aws:ResourceTag/${TagKey}

channel arn:${Partition}:lex:${Region}:${Account}:bot-channel:${BotName}:${BotAlias}:${ChannelName}

aws:ResourceTag/${TagKey}

intent version arn:${Partition}:lex:${Region}:${Account}:intent:${IntentName}:${IntentVersion}
slottype version arn:${Partition}:lex:${Region}:${Account}:slottype:${SlotName}:${SlotVersion}

Amazon Lex 的条件键

Amazon Lex 定义以下可以在 IAM policy 的 Condition 元素中使用的条件键。您可以使用这些键进一步细化应用策略语句的条件。有关下表中各列的详细信息,请参阅条件键表

要查看适用于所有服务的全局条件键,请参阅可用的全局条件键

条件键 描述 类型
aws:RequestTag/${TagKey} 根据请求中的标签筛选访问权限 字符串
aws:ResourceTag/${TagKey} 按附加到 Lex 资源的标签筛选访问权限 String
aws:TagKeys 根据请求中的标签键集筛选访问 ArrayOfString
lex:associatedIntents 允许基于请求中包含的目的控制访问 ArrayOfString
lex:associatedSlotTypes 允许基于请求中包含的槽类型控制访问 ArrayOfString
lex:channelType 允许基于请求中包含的通道类型控制访问 String