跨租户部署TeamsApp配置用户认证时OAuthAuthorityHost取值问题
Teams应用跨租户Azure AD认证
oauthHost配置说明 参数含义
Microsoft 365 OAuthAuthorityHost 对应配置项 {{state.fx-resource-aad-app-for-teams.oauthHost}},是Azure AD发起OAuth 2.0认证请求的根服务地址,作用是指定认证请求要发往哪个Microsoft云环境的Azure AD实例,取值只和应用注册所在租户归属的Microsoft云环境有关,和租户ID、资源托管位置无关。
常用固定取值参考
不同Microsoft云环境对应的标准取值如下,可先做初步匹配:
- 全球版Microsoft 365(绝大多数商用、教育版租户属于该环境):
https://login.microsoftonline.com- 世纪互联运营的中国区Microsoft 365:
https://login.partner.microsoftonline.cn- 美国政府GCC High/DoD环境:
https://login.microsoftonline.us
准确值获取路径
不需要查第三方文档,直接在Azure门户就能拿到100%准确的值,步骤如下:
- 登录业务用户所属租户对应的Azure门户,进入你已经创建好的新Azure AD应用注册页面
- 点击应用概览页顶部的「终结点」按钮,打开终结点列表
- 任意选择一个OAuth 2.0相关的终结点(比如OAuth 2.0授权终结点(v2)),提取地址中第一个单斜杠路径之前的根域名部分,就是
oauthHost的正确值。比如你看到的终结点是https://login.partner.microsoftonline.cn/12345678-1234-1234-1234-1234567890ab/oauth2/v2.0/authorize,对应的oauthHost就是https://login.partner.microsoftonline.cn
其余关联配置项填写说明
Microsoft 365 ClientId(对应{{state.fx-resource-aad-app-for-teams.clientId}}):填写新Azure AD应用概览页的「应用程序(客户端) ID」Microsoft 365 ClientSecret(对应{{state.fx-resource-aad-app-for-teams.clientSecret}}):填写在应用「证书和密码」页面创建的客户端密钥的Value值,不要填密钥IDMicrosoft 365 TenantId(对应{{state.fx-resource-aad-app-for-teams.tenantId}}):填写业务用户所属租户的「目录(租户) ID」,可在Azure AD概览页或应用注册概览页直接复制Microsoft 365 OAuthAuthorityHost(对应{{state.fx-resource-aad-app-for-teams.oauthHost}}):填写按上述步骤查到的根域名,不要带末尾斜杠
注意:跨租户场景下所有AAD相关配置都要以业务用户所属租户中注册的新应用信息为准,不要使用托管Teams应用资源所在租户的AAD配置值。
内容的提问来源于stack exchange,提问作者toellbe
相关产品推荐
相关产品推荐

