上架Teams商店的应用:单/多组织SSO及权限配置疑问
针对Teams Toolkit开发多组织SSO应用的问题解答
问题1:单组织SSO能否支持多组织发布?
不行。单组织SSO(仅限当前租户用户访问)的应用注册只能在单个租户内生效,没法支持多组织发布的场景。但你要实现“每个组织仅访问自身Dynamics数据”是完全可行的:
- 你需要在自己的Azure租户创建多租户应用注册,而不是依赖用户租户自动创建的单组织注册。
- 用户通过SSO登录时,令牌会携带其所在租户的信息,调用Dynamics 365 API时,会自动关联到用户租户对应的Dynamics环境,天然就只能访问自身组织的数据,不需要额外配置隔离逻辑。
问题2:如何配置API权限并让用户租户自动生效?
如果是要发布到Teams商店的多组织应用,正确的流程是:
- 在自己的Azure租户(不是测试用的M365租户)创建多租户应用注册,直接在注册项里添加需要的Graph和Dynamics 365 API权限(注意区分委派权限和应用权限,根据你的业务场景选择)。
- 在Teams Toolkit中配置应用使用这个多租户注册,部署测试资源时指向自己的Azure租户。
- 提交应用到Teams商店时,在发布门户里声明你需要的所有API权限。用户安装应用时,其租户的管理员需要对这些权限进行同意(如果是高权限的话),同意后,权限会自动同步到用户租户中对应的企业应用实例里,无需手动配置。
如果测试时用的是M365租户内的应用注册,那只是单租户测试用的,没法用于多组织发布,必须切换到自己Azure的多租户注册才符合发布要求。
内容的提问来源于stack exchange,提问作者Dandydon
相关产品推荐
相关产品推荐

