我们正在构建一个Web App / API,以便在我们的Azure AD中发布,并希望通过邀请(B2B场景)外部用户进入我们的Azure AD来提供对应用程序的访问。这将在我们的Azure AD中创建“Guest”类型的帐户,我们将使用该帐户为应用程序分配权限。在这种情况下,我们是否需要将我们的应用程序配置为“多租户”?代码内部有一些步骤可以容纳多租户登录,Azure AD中的应用程序注册的“设置”选项卡上有一个设置,标签为“多租户”,您可以选择是或否。应用程序注册设置,有一个弹出的泡泡说:
指定是否允许外部组织中的用户授予您的权限 应用程序访问其组织目录中的数据
我不确定代码如何(或是否)更改以及应用注册设置是否相关,但我们的应用不需要访问我们目录之外的任何数据。
答案 0 :(得分:2)
无需将您的应用程序进行多租户操作,也无需将用户定向到/ common端点。我已经对此进行了测试,您仍然可以获得一种SSO经验。
示例paul@org1.com(位于Org1 AAD中)是Org2 AAD的来宾用户(已接受邀请)。现在,该用户打开了一个私人浏览器,并登录到Org1 AAD。
然后,用户尝试在Org2中注册了应用程序的网站上点击该Web应用程序,然后该Web应用程序将用户重定向到https://login.microsoftonline.com/org2.onmicrosoft.com/oauth2/authorize。
结果,AAD认为用户已登录,并使用令牌等将其重定向到redirect_url。