azure - Azure Active Directory B2B 备用登录 ID
问题描述
我们希望将 Azure AD 用作 Web 应用程序中用户的身份提供程序。目前,我们已经使用自定义范围和访问令牌设置了所有内容,MSAL.js 2.0
该Auth Code Flow
令牌用于验证对我们各种后端服务的请求。
问题是我们的用户希望能够使用他们自己的自定义电子邮件地址登录,而不是使用 AD 生成的登录 ID 和@onmicrosoft.com domain
. 例如,user1@some-orginization.com
或user2@some-other-organization
。
也可以接受登录 ID 作为用户名,但肯定必须有一种方法允许用户使用配置文件的另一个属性(例如他们的备用电子邮件)登录。
我们的应用程序已注册到 AD,因此它只允许来自一个租户的登录,因为我们不希望用户已经拥有现有的 Microsoft 帐户。
我们正在避免 B2C,因为一些用户会面临公司政策方面的问题,这意味着他们可以作为用户被邀请,但在登录时会被拒绝。此外,B2C 并不像 B2B 那样真正支持角色,这对我们来说有点重要。
任何指导将不胜感激。
编辑:
经过无数小时的尝试,我认为这不值得,并切换到 Auth0。它们提供了我可能想要的一切,并且似乎比 Azure AD 本身更好地与其他租户集成了 Azure AD。
解决方案
我想你想表达的是,你想用任何电子邮件(包括个人账户和社交账户)登录你的应用程序。
如果是这样,那么您需要修改应用程序的清单配置,然后将/tenant id
端点更改为/common
端点。
要更改现有 AD 应用程序的设置,请导航到门户中它的 Manifest 刀片,找到signInAudience属性,使用AzureADandPersonalMicrosoftAccount
或进行设置PersonalMicrosoftAccount
。
推荐阅读
- android-studio - 在 android studio (3.3.2) 中找不到带有片段的空白活动
- ruby - 使嵌套模块全局可用
- google-cloud-platform - 有没有办法为具有自动缩放功能的 Cloud Dataflow 指定最少工作人员数量?
- java - 结合两个 onTouch 事件
- .net - SonarQube 后处理失败,原因不明
- c# - C# 只读获取访问器
- meteor - 问:SimpleSchema.extendOptions 不是函数,这是为什么呢?
- r - 在嵌套数据框中取移动平均值
- c# - 保存然后访问保存的文件
- android - Flutter使用http请求注册