我正在为我的公司尝试Azure AD B2B功能。我试图通过门户邀请外部用户并使用https://graph.microsoft.com/beta/invitations。在这两种情况下,都会成功邀请用户并添加到我们的目录中登录用于社交帐户(然后使用Microsoft帐户)。如果它是一个非社交帐户(又名contoso.com),它没有以前的Azure AD,那么当我们的应用程序尝试登录用户时,我会得到一个access_denied。如果我试图强制许可流程,我得到以下信息:来自非托管Azure AD目录的用户是否可以登录位于不同目录中的Azure AD多租户应用程序?
AADSTS65005:目前不支持您 公司aaa.no.应用ZZZ您的公司目前处于非托管状态,并且 需要管理员通过DNS 验证aaa.no才能配置应用程序zzz之前声明公司的所有权。
我们有许多小公司作为客户,他们都必须在用户使用我们的应用程序之前管理Azure AD目录,这似乎是不合理的。它应该根据Microsoft得天衣无缝:
无痕:谁需要访问公司的应用 不需要有Azure的AD的合作伙伴公司。 Azure AD B2B协作提供简单的用户注册体验,为这些合作伙伴提供即时访问您的应用程序的 。
如果他们可以注册并创建他们的用户和目录,他们为什么不能让他们被邀请同意登录的应用程序(登录并阅读用户配置文件委托权限是必需的应用程序)?
我们已经允许拥有自己托管的Azure AD的公司在我们的应用程序中使用他们的用户。我们让全球管理员允许管理员同意我们的应用程序,以便他们可以登录用户并阅读目录数据。这些用户不会被添加到我们的目录中,并且完美地工作。另外,如果我以受邀用户身份前往新门户网站,则可以看到域aaa.no已通过验证,但我无法将其设置为主要网站。
我尝试过的其他事情没有工作:升级到最新的ADAL版本,试图在https://apps.dev.microsoft.com中创建应用程序并使用它,试图在旧的天蓝色门户中设置权限(似乎是新门户中的权限错误没有出现在清单中)并试图使申请单一租户。什么都没有
有趣的是,这听起来像是正确的答案,但我会等到标记答案,直到我从Azure支持获得答案(已向他们提出问题)。我们确实使用通用端点,并且我们需要支持来宾用户和使用他们自己的租户的用户。我会尝试改变租户发现,看看是否有效。我看到你在微软工作。你知道公共终端是否将在未来支持客人? –
再次感谢您的回答。我在下面添加了另一个答案,以及我从Azure支持获得的最终响应,并简要描述了我使用的解决方法 –
我试图采取这种方法,并且遇到了可能是Azure系统上的一个错误(请参阅http://stackoverflow.com /问题/ 43377553/openidconnect误差租户的标识符-MAY-不待一个空性全局唯一标识符/ 43377804)。但也许我只是做错了什么。 @萨卡你有没有一个样本来描述你过去如何做到这一点? –