问题标签 [identity-experience-framework]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
666 浏览

azure-ad-b2c - 触发电子邮件验证

我正在使用自定义策略。

所需的用户旅程是:

  1. 用户在屏幕 1 上输入电子邮件/密码。
  2. 成功验证屏幕 1 后,用户将被发送到屏幕 2。在屏幕 2 中,用户必须输入发送到其电子邮件的代码。(注意用户在注册时已经验证了邮箱)

我坚持让 2 工作。当前策略如下所示: 步骤 1 输出电子邮件声明。

第 2 步将电子邮件声明作为输入。

在第 2 步中,将显示一个预填充电子邮件的可编辑文本框。不要求任何代码。但是,如果电子邮件被编辑,则要求输入代码。

0 投票
2 回答
4977 浏览

azure-ad-b2c - Azure AD B2C - 自定义策略中的“电子邮件”声明

我正在寻找一种将emails声明(电子邮件收集)添加到 Azure AD B2C 自定义策略的方法。此应用程序声明可直接从 Azure 门户获得,但我找不到在需要创建的自定义策略中实现此功能的方法。

我想要实现的是为我的 WebApp 用户提供 Azure AD B2C 身份验证,并将 Azure AD 身份验证作为员工的自定义身份验证提供程序,因此这意味着我需要添加emails两次声明 - 用于本地帐户和 Azure AD。

我按照本指南制定了自定义策略,因此我在ClaimsProviderTrustFrameworkExtensions.xml 文件中添加了一个新的。

当我下载在 Azure 门户中创建的注册和登录策略时,我可以看到以下输出声明:

我试图将该行添加到我的自定义政策中,但它没有返回emails索赔。

有任何想法吗?

0 投票
1 回答
898 浏览

azure - 如何将 Azure AD 登录中的属性映射到 B2C 身份?

按照此示例https://docs.microsoft.com/en-us/azure/active-directory-b2c/active-directory-b2c-setup-aad-custom我们已成功联合 Azure AD 目录(“AD”)使用 Azure AD B2C 目录 ('B2C'),因此我们可以让社交和自我断言注册到公共应用程序,我们的工作用户也可以使用他们的正常工作 ID 登录。这很好用,为我们解决了一个复杂的场景。

在使用 B2C 保护的应用程序中,我们需要向 AD 用户显示与其工作身份相关的内容(具体来说,我们需要根据他们的工作角色过滤产品),但我们无法获得这些信息,因为注册应用程序会为用户生成一个新的 B2C 身份(实际上是他们的 AD 身份的代理)。

我们需要做的是将用户原来的 AD 身份映射到新的 B2C 身份上。AD 用户的其他属性(例如 Given Name 和 Surname)已经映射,这似乎发生在这里,在ClaimsProvider我们的自定义策略的元素中,通过PartnerClaimType属性:

实际上,我们正在寻找的 ID 甚至可能被映射到一个oid属性oid

那么 - 我们如何将用户Object ID从工作 AD 目录映射到所创建的新 B2C 身份的属性上?

0 投票
1 回答
128 浏览

azure-ad-b2c - Azure AD B2C 自定义策略逻辑流概述?

我试图更好地理解 Azure AD B2C 中的自定义策略/身份体验框架。文档中有很多特定场景的操作方法,我已经在这个站点上得到了针对特定问题的很好的答案,但我仍然很难看到整个画面

有没有人知道在更高级别解释流程/逻辑流的资源,以帮助我了解UserJourneysClaimsProviders和其他组件的实际交互方式?

谢谢!

马丁

0 投票
3 回答
589 浏览

azure-ad-b2c - Azure AD B2C 中的自定义策略配置

如何在自定义策略中使用“配置文件”?就像appsetting.json在 ASP.Net Core 中一样。

要配置的东西


背景:每个环境(Local、Dev、QA、Prod 等)我们都有多个 B2C 租户。我们需要从Local -> Dev -> .... 就目前而言,我们必须在推广时修改政策。

我希望有类似从 B2C 应用程序中提取的东西。Keys

0 投票
1 回答
471 浏览

azure-ad-b2c - 使用用户名重置 B2C/IEF 密码

我正在创建自定义 B2C 策略,并尝试为使用用户名创建的本地帐户复制密码重置过程。

我可以从 AD 读取用户名,但我不确定如何根据帐户验证已验证的电子邮件地址。

目前,如果用户名正确,则可以使用任何电子邮件地址进行验证。

技术简介:

验证技术简介:

用户旅程:

0 投票
1 回答
1045 浏览

azure-ad-b2c - 自定义策略验证错误

使用 AADB2C 身份体验框架自定义策略,我正在尝试创建一个允许多个社交提供者以及本地提供者的 UserJourney,但只允许登录,而不是注册。当我上传包含 UserJourney 的 TrustFrameworkExtensions 文件时,上传失败并出现以下错误:

无法上传政策。原因:验证失败:在租户“mytenant.onmicrosoft.com”的策略“B2C_1A_TRUSTFRAMEWORKEXTENSIONS”中发现 2 个验证错误。在租户“B2C_1A_TrustFrameworkExtensions”的策略“B2C_1A_TrustFrameworkExtensions”中的 UserJourney 中引用 ID 为“SignInWithLogonNameExchange”的索赔交换mytenant.onmicrosoft.com”,但未找到。在租户“MBHB2C.onmicrosoft.com”的策略“B2C_1A_TrustFrameworkExtensions”中,ID 为“SignInAny”的 UserJourney 中引用了 ID 为“SignInWithLogonNameExchange”的ClaimsExchange,但未找到。

我认为包含所有相关内容的 UserJourney 的第一部分是:

我不明白它没有找到实际上意味着什么。

建议?

谢谢!

马丁

0 投票
1 回答
422 浏览

azure-ad-b2c - 在登录期间接受用户名或电子邮件

我要求允许用户使用他们在注册期间创建的电子邮件或用户名登录。

以下代码片段是我的用户旅程步骤,它引用了基础技术配置文件。引用ContentDefinition的是利用unifiedssp:1.1.0数据模型。

以及对登录标识符和密码执行验证检查的引用技术配置文件:

我知道setting.operatingMode定义所需的登录标识符是否为UsernameEmail。是否有第三种选择允许两者?

指定一个会在登录标识符字段上强制执行正则表达式,并防止使用另一个,即如果setting.operatingMode设置为,则不接受电子邮件地址作为输入Username

0 投票
1 回答
105 浏览

azure-web-app-service - Azure 应用服务中的缓存 Easy Auth 和 B2C

我正在尝试使用 Azure AD B2c 配置 Azure App Service Easy Auth,它似​​乎是一个缓存。

我已经使用他们的身份体验框架创建了一个新策略并更新了设置,但 chrome 网络工具仍然注册重定向到旧策略?p=b2c_1_signuporsignin而不是我的自定义?p=b2c_1a_signup_or_signin_custom

将完全相同的配置复制到同一应用服务中的另一个插槽非常有效。

因此,App Service 中似乎存在某种内部缓存。使用“立即运行”测试登录效果很好,但只是浏览到/.auth/login/aad抛出Bad Request

这是一个已知的问题?

(我已经清除了所有浏览器缓存,使用了隐身模式,尝试了 Safari,但仍然是同样的问题。我还看到 Azure 的 302,所以这不是浏览器问题)

0 投票
1 回答
1050 浏览

azure-ad-b2c - 无需用户输入的 Azure AD B2C 注册

我已将 Azure AD B2C 设置为允许用户从“常规”AAD 目录使用自定义策略进行身份验证,如此处所述https://docs.microsoft.com/en-us/azure/active-directory-b2c/active-目录-b2c-setup-aad-custom。在一种情况下,我希望用户进行注册(使用他们的 AAD 凭据进行身份验证,在 AAD B2C 目录中创建相应的对象,并将 objectidentifier 作为声明传递给我的应用程序)而不提供任何进一步的信息。从示例开始,我无法弄清楚如何完全跳过自我断言步骤。我尝试过的两种方法是

1) 删除SelfAsserted-Social ClaimsExchange,以及 2) 修改(实际上是复制到 TrustFrameworkExtensions、重命名和编辑)SelfAsserted-SocialAAD-UserReadUsingObjectId ClaimsExchanges,以便唯一的 OutputClaim 条目是不需要用户提示的条目。

在这两种方法中,从 UI 的角度来看,注册似乎都有效,但在 B2C 目录中没有创建用户对象。使用 App Insights,在这两种方法中,AAD-UserReadUsingObjectId似乎都会生成Microsoft.Cpim.Common.PolicyException

完整的用户旅程是

有任何想法吗?

谢谢

马丁