php - Azure AD SSO = AADSTS50020 - 多租户,如何允许外部租户注册到我的应用程序?
问题描述
我们有一个 SaaS 应用程序,我们正在使用https://github.com/TheNetworg/oauth2-azure(v2 通用端点)将 azure ad sso 与 oauth2 (目前在本地)集成
至此,您可以登录了,新帐户已自动注册(在我们的应用程序上,使用租户 ID 将它们链接到我们端的组织)
问题?我正在尝试使其成为多租户,所以我创建了另一个 azure 帐户,但我不知道如何注册到应用程序,它告诉我将用户创建为外部用户,但我希望它是自动化的如果可能的话,不必将用户添加到我们的应用程序(即我希望我们的应用程序可以注册到外部广告)。
当我尝试使用来自外部 Azure AD 的新用户登录时,这就是我现在得到的。
AADSTS50020: User account '*****@gmail.com' from identity provider 'live.com' does not exist in tenant '***' and cannot access the application '***-**-**-**-***' in that tenant. The account needs to be added as an external user in the tenant first. Sign out and sign in again with a different Azure Active Directory user account.
将外部用户添加到我们的主活动目录是唯一的方法,如果是这样,是否有一种简单的方法可以尽可能地自动化该过程(即从现有 AD 添加每个用户)
解决方案
Azure B2B 协作允许您与来自任何其他组织的来宾用户共享您的组织应用程序,因此,如果用户来自任何其他组织或租户,例如租户 A 并尝试登录租户 B,那么您需要添加用户从租户 A 到租户 B 作为访客用户。请参阅链接什么是 Azure Active Directory B2B 中的来宾用户访问?.
请参阅批量邀请 Azure AD B2B 协作用户使用 PowerShell 同时邀请多个来宾用户到您的组织。
推荐阅读
- php - 空的和空白的 WordPress 登录页面
- c# - 使用数据阅读器进行选择的测验。单击按钮从数字 1 更改为 4
- ubuntu - var/log 归档整个空间
- r - R Shiny Leaflet 更改标签而不重绘
- c# - 2D Bullet 在统一 2018.2 上传播
- python - Python3 EOFError:读取一行 Hackerrank 或任何在线门户时出现 EOF
- c# - 是否可以创建一个可以根据文件位置重定向文件夹图标目录的程序?
- laravel - 如何在验证规则类 Laravel 中使用 2 个属性
- python - 为什么内部函数无法在python的外部范围内获取变量
- node.js - 是否有任何用于处理 TCP 连接的内置 LoopBack 功能?