本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
聊天应用程序策略语法和示例
本主题介绍聊天应用程序的策略语法并提供了示例。
聊天应用程序策略的语法
聊天应用程序策略是根据 JSON 规则构造的纯文本文件。
以下示例显示了聊天应用程序策略的基本语法:
{ "chatbot":{ "platforms":{ "slack":{ "client":{ "@@assign":"enabled" // enabled | disabled }, "workspaces": { // limit 255 "@@assign":[ "Slack-Workspace-Id" ] }, "default":{ "supported_channel_types":{ "@@assign":[ "private" // public | private ] }, "supported_role_settings":{ "@@assign":[ "user_role" // user_role | channel_role ] } }, "overrides":{ // limit 255 "Slack-Workspace-Id":{ "supported_channel_types":{ "@@assign":[ "public" // public | private ] }, "supported_role_settings":{ "@@assign":[ "user_role" // user_role | channel_role ] } } } }, "microsoft_teams":{ "client":{ "@@assign":"enabled" }, "tenants":{ // limit 36 "Microsoft-Teams-Tenant-Id":{ // limit 36 "@@assign":[ "Microsoft-Teams-Team-Id" ] } }, "default":{ "supported_role_settings":{ "@@assign":[ "user_role" // user_role | channel_role ] } }, "overrides":{ // limit 36 "Microsoft-Teams-Tenant-Id":{ // limit 36 "Microsoft-Teams-Team-Id":{ "supported_role_settings":{ "@@assign":[ "user_role" // user_role | channel_role ] } } } } }, "chime":{ "client":{ "@@assign":"disabled" // enabled | disabled } } }, "default":{ "client":{ "@@assign":"disabled" // enabled | disabled } } } }
本聊天应用程序政策包括以下内容:
chatbot字段键名称。聊天应用程序策略始终以此固定密钥名称开头。这是此示例策略中的第一行。在
chatbot下有一个platforms块,其中包含不同受支持聊天应用程序的配置:Slack、Microsoft Teams 和 Amazon Chime。对于 Slack,有以下字段可用:
"client":"enabled":Slack 客户端已启用。允许 Slack 集成。"disabled":Slack 客户端已禁用。不允许 Slack 集成。
"workspaces":允许的 Slack 工作区列表,以逗号分隔。在此示例中,允许的 Slack 工作区为和。Slack-Workspace-Id1Slack-Workspace-Id2"default":Slack 工作区的默认设置。"supported_channel_types":"public":默认情况下,范围内的 Slack 工作区会允许公有 Slack 频道。"private":默认情况下,范围内的 Slack 工作区会允许私有 Slack 频道。
supported_role_settings:"user_role": 默认情况下,范围内的 Slack 工作区会允许用户级别的 IAM 角色。"channel_role": 默认情况下,范围内的 Slack 工作区会允许频道级别的 IAM 角色。
"overrides":Slack 工作区的覆盖设置。:适用覆盖设置的 Slack 工作区列表,以逗号分隔。在此示例中,Slack 工作空间为Slack-Workspace-Id2Slack-Workspace-Id2。"supported_channel_types":"public":覆盖有关范围内的 Slack 工作区是否允许公有 Slack 频道的设置。"private":覆盖有关范围内的 Slack 工作区是否允许私有 Slack 频道的设置。
supported_role_settings:"user_role":覆盖范围内的 Slack 工作区是否允许用户级别的 IAM 角色的设置。"channel_role":覆盖范围内的 Slack 工作区是否允许频道级别的 IAM 角色的设置。
对于 Microsoft Teams,有以下字段可用:
"client":"enabled":Microsoft Teams 客户端已启用。允许 Microsoft Teams 集成。"disabled":Microsoft Teams 客户端已禁用。不允许 Microsoft Teams 集成。
"tenants":允许的 Microsoft Teams 租户列表,以逗号分隔。在此示例中,允许的租户是Microsoft-Teams-Tenant-Id。:该租户内允许的团队列表,以逗号分隔。在此示例中,允许的队伍是Microsoft-Teams-Tenant-IdMicrosoft-Teams-Team-Id。
"default":该租户内团队的默认设置。supported_role_settings:"user_role":默认情况下,范围内的团队会允许用户级别的 IAM 角色。"channel_role":默认情况下,范围内的团队会允许频道级别的 IAM 角色。
"overrides":Microsoft Teams 租户的覆盖设置。:适用覆盖设置的租户列表,以逗号分隔。在此示例中,租户是Microsoft-Teams-Tenant-IdMicrosoft-Teams-Tenant-Id。:该租户内的团队列表,以逗号分隔。在此示例中,允许的队伍是Microsoft-Teams-Team-IdMicrosoft-Teams-Team-Id。supported_role_settings:"user_role":覆盖范围内的团队是否允许用户级别的 IAM 角色的设置。"channel_role":覆盖范围内的团队是否允许频道级别的 IAM 角色的设置。
对于 Amazon Chime,有以下字段可用:
"client":"enabled":Amazon Chime 客户端已启用。允许 Amazon Chime 集成。"disabled":Amazon Chime 客户端已禁用。不允许 Amazon Chime 集成。
下
default方有一个屏蔽chatbot,除非在较低级别被覆盖,否则将禁用整个组织的聊天应用程序中的 Amazon Q Developer。此默认设置还会禁用聊天应用程序中的 Amazon Q Developer 支持的所有新聊天应用程序。例如,如果聊天应用程序中的 Amazon Q Developer 支持新的聊天应用程序,则此默认设置也会禁用该新支持的聊天应用程序。
注意
有关渠道级别 IAM 角色和用户级 IAM 角色的更多信息,请参阅《聊天应用程序中的 Amazon Q 开发者管理员指南》中的 “了解 Amazon Q 开发者在聊天应用程序中的权限”。
聊天应用程序策略示例
下面的示例策略仅供参考。
示例 1:仅允许特定工作区内的私有 Slack 频道,禁用 Microsoft Teams,支持所有身份验证模式
以下策略侧重于控制 Slack 和 Microsoft Teams 聊天机器人集成的允许配置。
{ "chatbot": { "platforms": { "slack": { "client": { "@@assign": "enabled" }, "workspaces": { "@@assign": [ "Slack-Workspace-Id" ] }, "default": { "supported_channel_types": { "@@assign": [ "private" ] }, "supported_role_settings": { "@@assign": [ "channel_role", "user_role" ] } } }, "microsoft_teams": { "client": { "@@assign": "disabled" } }, "chime":{ "client":{ "@@assign":"disabled" } }, "default":{ "client":{ "@@assign":"disabled" } } } } }
Slack
Slack 客户端已启用。
只允许使用特定的 Slack 工作空间
Slack-Workspace-Id。默认设置为仅允许私有 Slack 频道、频道级别 IAM 角色和用户级别 IAM 角色。
Microsoft Teams
Microsoft Teams 客户端已禁用。
Amazon Chime
Amazon Chime 客户端已禁用。
其他详细信息
底部的
default区块将客户端设置为禁用,这会禁用整个组织的聊天应用程序中的 Amazon Q Developer,除非在较低级别被覆盖。此默认设置还会禁用聊天应用程序中的 Amazon Q Developer 支持的所有新聊天应用程序。例如,如果聊天应用程序中的 Amazon Q Developer 支持新的聊天应用程序,则此默认设置也会禁用该新支持的聊天应用程序。
示例 2:仅允许使用用户级别 IAM 角色的 Slack 集成
以下策略对 Slack 采取更宽松的方法,允许所有 Slack 工作区,但将身份验证模式限定为仅限用户级别 IAM 角色。
{ "chatbot":{ "platforms":{ "slack":{ "client":{ "@@assign":"enabled" }, "workspaces": { "@@assign":[ "*" ] }, "default":{ "supported_role_settings":{ "@@assign":[ "user_role" ] } } }, "microsoft_teams":{ "client":{ "@@assign":"disabled" } }, "chime":{ "client":{ "@@assign":"disabled" } } }, "default":{ "client":{ "@@assign":"disabled" } } } }
Slack
Slack 客户端已启用。
没有使用通配符
"*"定义任何特定的 Slack 工作区,因此允许使用所有工作区。默认设置为仅允许用户级别 IAM 角色。
Microsoft Teams
Microsoft Teams 客户端已禁用。
Amazon Chime
Amazon Chime 客户端已禁用。
其他详细信息
底部的
default区块将客户端设置为禁用,这会禁用整个组织的聊天应用程序中的 Amazon Q Developer,除非在较低级别被覆盖。此默认设置还会禁用聊天应用程序中的 Amazon Q Developer 支持的所有新聊天应用程序。例如,如果聊天应用程序中的 Amazon Q Developer 支持新的聊天应用程序,则此默认设置也会禁用该新支持的聊天应用程序。
示例 3:仅允许特定租户中的 Microsoft Teams 集成
以下示例策略将组织锁定,从而仅允许指定租户内的 Microsoft Teams 聊天机器人集成,同时完全阻止 Slack 集成。
{ "chatbot":{ "platforms":{ "slack":{ "client": { "@@assign": "disabled" }, }, "microsoft_teams":{ "client": { "@@assign": "enabled" }, "tenants":{ "Microsoft-Teams-Tenant-Id":{ "@@assign":[ "*" ] } } }, "chime": { "client":{ "@@assign": "disabled" } } } } }
Slack
Slack 客户端已禁用。
Microsoft Teams
Microsoft-Teams-Tenant-Id仅允许特定租户,使用通配符"*"允许该租户中的所有团队。
Amazon Chime
Amazon Chime 客户端已禁用。
其他详细信息
底部的
default区块将客户端设置为禁用,这会禁用整个组织的聊天应用程序中的 Amazon Q Developer,除非在较低级别被覆盖。此默认设置还会禁用聊天应用程序中的 Amazon Q Developer 支持的所有新聊天应用程序。例如,如果聊天应用程序中的 Amazon Q Developer 支持新的聊天应用程序,则此默认设置也会禁用该新支持的聊天应用程序。
示例 4:允许聊天应用程序中受限制的 Amazon Q 开发者访问 Slack 工作空间和 Microsoft Teams 租户
以下政策允许受限的 Amazon Q 开发者在聊天应用程序中访问选定的 Slack 工作空间和 Microsoft Teams 租户。
{ "chatbot":{ "platforms":{ "slack":{ "client":{ "@@assign":"enabled" }, "workspaces": { "@@assign":[ "Slack-Workspace-Id1", "Slack-Workspace-Id2" ] }, "default":{ "supported_channel_types":{ "@@assign":[ "private" ] }, "supported_role_settings":{ "@@assign":[ "user_role" ] } }, "overrides":{ "Slack-Workspace-Id2":{ "supported_channel_types":{ "@@assign":[ "public", "private" ] }, "supported_role_settings":{ "@@assign":[ "channel_role", "user_role" ] } } } }, "microsoft_teams":{ "client":{ "@@assign":"enabled" }, "tenants":{ "Microsoft-Teams-Tenant-Id":{ "@@assign":[ "Microsoft-Teams-Team-Id" ] } }, "default":{ "supported_role_settings":{ "@@assign":[ "user_role" ] } }, "overrides":{ "Microsoft-Teams-Tenant-Id":{ "Microsoft-Teams-Team-Id":{ "supported_role_settings":{ "@@assign":[ "channel_role", "user_role" ] } } } } } }, "default":{ "client":{ "@@assign":"disabled" } } } }
Slack
Slack 客户端已启用。
允许的 Slack 工作区是和。
Slack-Workspace-Id1Slack-Workspace-Id2Slack 的默认设置为仅允许私有频道和用户级别 IAM 角色。
工作空间有一个替代项
Slack-Workspace-Id2,允许公共和私有渠道以及频道级别 IAM 角色和用户级 IAM 角色。
Microsoft Teams
Microsoft Teams 客户端已启用。
允许的 Team
Microsoft-Teams-Tenant-Ids 租户加入团队Microsoft-Teams-Team-Id。默认设置为仅允许用户级别 IAM 角色。
租户有一个替代项
Microsoft-Teams-Tenant-Id,允许团队同时使用频道级别 IAM 角色和用户级 IAM 角色Microsoft-Teams-Team-Id。
其他详细信息
底部的
default区块将客户端设置为禁用,这会禁用整个组织的聊天应用程序中的 Amazon Q Developer,除非在较低级别被覆盖。这意味着此示例中禁用了 Amazon Chime。此默认设置还会禁用聊天应用程序中的 Amazon Q Developer 支持的所有新聊天应用程序。例如,如果聊天应用程序中的 Amazon Q Developer 支持新的聊天应用程序,则此默认设置也会禁用该新支持的聊天应用程序。