📢 转载信息
原文作者:Ramon Diez Lejarazu, Anneline Sibanda, and David Perez Caparros
组织在多个地理区域拥有用户时,会面临数据驻留要求,例如欧洲的《通用数据保护条例》(GDPR)、特定国家的数据主权法律以及内部合规政策。Amazon Quick 结合 Microsoft 365 扩展支持区域路由以满足这些要求。
Amazon Quick 支持多区域部署,因此您可以将用户路由到特定 AWS 区域的 Amazon Quick 资源(Quick 聊天机器人、Quick Flow、知识库等)。受监管的行业,如金融服务、医疗保健、能源和电信,通常使用此模式来将数据保留在特定的地理边界内。
如果您将 Amazon Quick 与 Microsoft 365 应用程序(在此实例中为 Microsoft Teams)集成,用户必须进行身份验证并连接到其适当的区域性 Amazon Quick 资源。区域路由确保用户可以访问他们在 Amazon Quick 区域中构建的聊天机器人和资源。在本文中,我们将向您展示如何在跨多个 AWS 区域部署 Amazon Quick Microsoft Teams 扩展时强制执行数据驻留。您将学习如何配置多区域 Amazon Quick 扩展,这些扩展会自动将用户路由到适合的 AWS 区域资源,从而帮助遵守 GDPR 和其他数据主权要求。
解决方案概述
在本文中,我们提出了一个实际示例,其中 MyCompany 是一家虚构的全球组织,其欧洲总部位于欧洲(爱尔兰)区域 (eu-west-1) 访问 Amazon Quick,而其美国分支位于美国东部(弗吉尼亚)区域 (us-east-1)。单个 Amazon Quick 账户拥有特定 AWS 区域的聊天机器人(MyCompany-Knowledge-Agent-eu-west-1 和 MyCompany-Knowledge-Agent-us-east-1),其中包含本地化的公司信息。
区域路由需要 AWS IAM Identity Center 并带有可信令牌颁发者 (TTI) 以进行跨系统身份验证。本文使用 Microsoft Entra ID 进行基于组的访问控制,以演示组织如何自动将用户路由到其适当的 AWS 区域,尽管也可以采用其他身份管理方法。本文重点介绍 Amazon Quick Microsoft Teams 扩展 作为主要示例。
以下架构图展示了如何通过将 Microsoft Entra ID 与 IAM Identity Center 集成,在多个 AWS 区域中自动化用户路由。通过使用 Microsoft Entra ID 组 membership 来将用户定向到他们指定的区域性 Amazon Quick 部署,您可以在保持数据驻留于特定地理边界的同时,为您的全球劳动力提供一致的体验。

要实现此设计,您将遵循一个多阶段过程,从 AWS 管理控制台 配置开始,最后到向用户部署区域性附加组件。总体而言,本文展示了如何一次性配置身份和信任,然后为每个 AWS 区域重复少量区域性步骤。以下步骤总结了高层工作流:
- 在 Amazon Quick 控制台中启动设置,并选择要配置的 AWS 区域。
- 配置区域性 Microsoft Teams 扩展集成,包括该 AWS 区域的 AWS Identity and Access Management (IAM) 角色和 AWS Secrets Manager 密钥,并将 IAM Identity Center 信任为令牌颁发者。
- 在 Amazon Quick 中激活扩展以生成区域性清单文件。
- 在 Microsoft Entra ID 应用程序中注册扩展回调,并完成所有 AWS 区域应用程序的激活回调。
- 通过 Microsoft Entra ID 将 Microsoft Teams 附加组件 (
[YOUR_COMPANY_NAME]-Teams-[AWS_REGION]) 部署到您的区域性用户组。 - 将区域性附加组件映射到其指定的知识机器人(
[YOUR_COMPANY_NAME]-Teams-[AWS_REGION] Agent),以授予用户对本地化数据的访问权限。
先决条件
您的 AWS 环境必须在目标 AWS 区域中激活了 Amazon Quick,以及用于处理区域身份验证的身份和密钥管理服务。对于 AWS 服务,您必须具备以下条件:
- 一个活动的 Amazon Quick 账户
- 配置了 IAM Identity Center,并通过 与 Microsoft Entra ID 的 SAML 集成管理您组织的身份
- 在两个目标 AWS 区域中均可使用 Secrets Manager 来存储身份验证凭证
- 具有创建角色和策略的 IAM 访问权限
对于 Microsoft 365,您必须具备以下管理员访问权限:
- Microsoft Entra ID 中的全局管理员或应用程序管理员角色
- 对 Microsoft 365 管理中心应用程序部署的访问权限
- 在 Microsoft Entra ID 中创建和配置企业应用程序的权限
创建 Microsoft Entra ID 应用程序
首先,我们将建立每个 AWS 区域使用的共享身份基础。在第一步中,您将创建一个 Microsoft Entra ID 应用程序。Microsoft 365 扩展使用 Microsoft Entra ID 应用程序通过 IAM Identity Center 对用户进行身份验证,以访问 Amazon Quick。请完成以下步骤来创建您的应用程序:
- 在您的 Azure 账户中,选择 App registrations,然后选择 New registration。
- 对于 Supported account types,选择 Accounts in this organizational directory only (Personal use only – Single tenant)。
- 选择 Register。
- 导航到应用程序注册的 Manage – Authentication 选项卡。
- 选择 Add Redirect URL。
- 选择 Web。
- 在本教程中,我们将使用两个重定向 URL,使用模式
https://qbs-cell001.dp.appintegrations.[AWS_REGION].prod.plato.ai.aws.dev/auth/idc-tti/callback:https://qbs-cell001.dp.appintegrations.eu-west-1.prod.plato.ai.aws.dev/auth/idc-tti/callbackhttps://qbs-cell001.dp.appintegrations.us-east-1.prod.plato.ai.aws.dev/auth/idc-tti/callback
Microsoft Entra ID 使用回调 URL 将用户的登录响应返回给 IAM Identity Center,以用于正确的 AWS 区域(eu-west-1 或 us-east-1)。请使用这些确切的 URL — 它们是 Amazon Quick 部署所需的实际值。

- 授予 Microsoft Graph User.Read 权限,以允许应用程序登录用户并读取其基本配置文件信息。此委派权限不需要管理员同意。

在后续步骤中,您将需要您的 Microsoft 租户 ID、应用程序客户端 ID 和客户端密钥值。
在 IAM Identity Center 中创建可信令牌颁发者
在此步骤中,您将在 IAM Identity Center 中创建可信令牌颁发者。可信令牌颁发者是 IAM Identity Center 中的一种配置,用于验证 Microsoft Entra ID 颁发的令牌。您可以将其用于跨系统身份验证,以便用户可以在 Microsoft 365 和 AWS 之间移动而无需重复登录。请完成以下步骤,使用您 Microsoft 租户的颁发者 URL 和映射电子邮件属性来配置可信令牌颁发者:
- 在 IAM Identity Center 控制台中,选择导航窗格中的 Settings。
- 选择 Create trusted token issuer。
- 对于 Issuer URL,以
https://login.microsoftonline.com/[YOUR_TENANT_ID]/v2.0格式输入您可信令牌颁发者的 URL,使用您从上一步检索到的租户 ID。 - 对于 Trusted token issuer name,以
[YOUR_COMPANY_NAME]-MS365Extensions-Trust-Token-Issuer格式输入您可信令牌颁发者的名称,使用您的公司名称。 - 选择 Create trusted token issuer。
此配置适用于您将要部署扩展的每个 AWS 区域。

在全局身份组件就绪后,您现在可以为每个 AWS 区域配置其自身的密钥、角色和扩展设置,以强制执行每个地理 AWS 区域的数据驻留。
设置 IAM 权限和 Secrets Manager 条目
在此步骤中,您将创建必要的密钥来存储 Microsoft 365 扩展凭证以及授予密钥读取访问权限的 IAM 权限。
在 Secrets Manager 中为每个 AWS 区域(eu-west-1 和 us-east-1)创建一个密钥,遵循命名约定 [YOUR_COMPANY_NAME]/MS365/Extensions/[AWS_REGION]:
{
"client_id":"[YOUR_CLIENT_ID]",
"client_secret":"[YOUR_CLIENT_SECRET]"
}
创建一个名为 [YOUR_COMPANY_NAME]-MS365-Extensions-Policy 的 IAM 策略:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "SecretManagerPermissions",
"Effect": "Allow",
"Action": [
"secretsmanager:GetSecretValue"
],
"Resource": [
"[SECRET_EU_WEST_1_ARN]",
"[SECRET_US_EAST_1_ARN]"
]
},
{
"Sid": "TokenIssuerPermissions",
"Effect": "Allow",
"Action": [
"sso:DescribeTrustedTokenIssuer"
],
"Resource": "[YOUR_TTI_ARN]"
}
]
}
使用以下信任关系:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": [
"eu-west-1.prod.appintegrations.plato.aws.internal",
"us-east-1.prod.appintegrations.plato.aws.internal"
]
},
"Action": "sts:AssumeRole",
"Condition": {}
}
]
}
每次激活新的 AWS 区域时,您都必须在 Secrets Manager 中创建一个新的密钥,并将新的密钥 Amazon 资源名称 (ARN) 添加到 IAM 策略的 Resource 列表中。您还必须将要激活的新 AWS 区域添加到 IAM 角色信任关系中的 Service 字段。此字段标识区域服务主体,即(例如,eu-west-1.prod.appintegrations.plato.aws.internal)需要权限在该特定 AWS 区域中承担您的 IAM 角色的特定 AWS 服务标识。
记下创建的 IAM 角色 ARN。您将在下一步中需要它。
在 Amazon Quick 中配置扩展
请完成以下步骤来创建 Amazon Quick 托管的 Microsoft Teams 扩展:
- 登录 Amazon Quick 控制台。
- 在右上角,选择个人资料图标。
- 选择 EU (Ireland) 区域。
- 在下拉菜单中,选择 Manage Quick。
- 在导航窗格的 Permissions 下,选择 Extension access。
- 选择 Add extension access。
- 设置您的可信令牌颁发者:
- 对于 Trusted Token Issuer Arn,输入您创建的可信令牌颁发者的 ARN。
- 对于 Aud claim,输入您的客户端 ID。
受众 (Aud) 声明是一个安全标识符,用于验证身份验证令牌仅由其预期的特定应用程序使用,从而防止未经授权的访问。这些设置在同一 AWS 区域中的扩展访问之间共享。

- 从可用的扩展类型中选择 Microsoft Teams。

- 使用您的 Microsoft 365 租户 ID、安全属性和身份验证设置配置扩展:
- 输入名称和可选描述。
- 对于 Microsoft tenant ID,输入您的租户 ID。
- 对于 Secrets Role ARN,输入您的 Secrets Manager 角色的 ARN。
- 对于 Secrets ARN,输入您的密钥的 ARN。ARN 特定于区域,并且必须指向您的区域性 AWS 资源。

- 返回 Amazon Quick 控制台。
- 在导航窗格中选择 Extensions,然后选择 Create extension。
- 创建 Microsoft Teams 扩展。
- 选择扩展旁边的选项菜单(三个点),然后选择 Install。
此过程将在 Microsoft Entra ID 中创建一个企业应用程序,其中包含 Microsoft 365 Teams 需要与之通信的特定区域性 AWS 资产的唯一 URL 和说明。应用程序安装需要权限才能在 Microsoft Entra ID 中安装企业应用程序。

安装完成后,Microsoft Entra ID 企业应用程序中将显示以下条目。

- 重复这些步骤,在
us-east-1区域创建扩展并安装应用程序。遵循相同的命名约定并添加 AWS 区域后缀,并为us-east-1区域使用密钥 ARN。

创建聊天机器人
区域性应用程序部署后,您需要创建每个附加组件将访问的特定 AWS 区域的聊天机器人。每个 AWS 区域都维护其本地化知识库的机器人。请完成以下步骤:
- 在
eu-west-1中打开 Amazon Quick 控制台。 - 在导航窗格中,选择 Chat agents,然后选择 Create chat agent。
- 在
eu-west-1中创建一个区域性聊天机器人,包含欧洲公司知识。命名约定包括 AWS 区域标识符,以便于跨多个区域进行管理:[YOUR_COMPANY_NAME]-Knowledge-Agent-eu-west-1。

- 重复这些步骤,在
us-east-1中创建一个聊天机器人,其中包含特定于美国的公司信息,称为[YOUR_COMPANY_NAME]-Knowledge-Agent-us-east-1。

最后一步是将正确的区域性附加组件部署到 Microsoft 365 中的相应区域性组。
部署 Microsoft Teams 应用程序
在最后一步中,您将为各自的区域性组分配每个 Microsoft Teams 应用程序。请完成以下步骤:
- 在 Microsoft Teams 管理中心 中,选择 Team apps。
- 选择 Manage apps 并按“Amazon Quick”过滤应用程序。

- 选择第一个应用程序(在
eu-west-1区域),然后选择 Edit Availability。 - 将扩展分配给特定的区域性用户组,而不是整个组织。此基于组的部署会自动将您的用户路由到正确的区域性 Amazon Quick 账户资源。

- 使用
us-east-1区域中的 Microsoft Teams 应用程序重复相同的过程。
以下屏幕截图显示了 Microsoft Teams 管理中心的配置外观。

部署传播后,您可以验证用户是否自动路由到正确的区域性机器人。
验证实施
EU 用户在使用 Microsoft Teams 扩展时可以使用 MyCompany-Teams-eu-west-1 机器人。插件会默认选择 My Assistant 聊天机器人,因此您必须选择设置(齿轮)图标并选择 MyCompany-Knowledge-Agent-eu-west-1 chat 机器人。


以下屏幕截图显示了与聊天机器人交互的示例。

美国用户可以使用 MyCompany-Knowledge-Agent-us-east-1 聊天机器人,这表明在无需手动配置的情况下成功实现了区域路由。
故障排除
以下提示可以帮助您解决在设置 Amazon Quick 扩展时可能遇到的一些常见问题:
- Quick 扩展未在 Microsoft Teams 中显示:
- 等待 24-48 小时,以便 Microsoft 365 部署传播
- 验证用户是否属于正确的 Microsoft Entra ID 组
- 清除 Microsoft Office 附加组件缓存并重启 Teams
- Amazon Quick 扩展身份验证问题:
- 验证 Microsoft Entra ID 中的重定向 URL 是否完全匹配
- 检查可信令牌颁发者配置
- 确认 IAM 角色信任关系包含正确的服务主体
- 列出的 Amazon Quick 扩展机器人错误:
- 验证用户组membership(应仅在一个区域组中)
- 检查 Microsoft 365 管理中心中的清单到组分配
- 让用户注销并重新登录
- Amazon Quick 扩展中的机器人下拉列表为空:
- 验证机器人是否已在 Amazon Quick 控制台中与用户共享
- 确认机器人存在于与扩展相同的 AWS 区域
- 检查机器人权限是否设置为至少用户级别
清理
为避免持续产生费用,如果您不再需要通过本文创建的资源,请进行清理。
结论
此 Microsoft 365 的多区域 Amazon Quick 扩展解决方案为您的全球员工提供了符合法规要求、感知 AWS 区域的 AI 功能。本文中的架构和实施步骤展示了如何在保持数据驻留和合规边界的同时,将企业 AI 与生产力工具集成。
有关增强生产力而不必切换应用程序的 AI 驱动助手的更多详细信息,请参阅 Extension access。请参阅 Getting started with Amazon Quick 以立即开始使用 Amazon Quick。
关于作者
🚀 想要体验更好更全面的AI调用?
欢迎使用青云聚合API,约为官网价格的十分之一,支持300+全球最新模型,以及全球各种生图生视频模型,无需翻墙高速稳定,文档丰富,小白也可以简单操作。
评论区