我们正在将Azure B2C用于我们的身份提供程序,但是很明显,用户发现该过程有些笨拙。大多数情况下,这似乎是由于注册过程的同步性所致。
我们确实要验证电子邮件地址和MFA电话号码,但最好不要在输入时进行验证。有没有一种方法可以利用图形API调用来解决此问题,或者使用自定义策略来实现相同目的?
我们还希望清楚区分注册/登录过程。这样一来,用户可以直接定向到这些页面,也可以对它们进行品牌化。
答案 0 :(得分:2)
您可能可以通过两个自定义策略来实现此目标:
请注意,发送验证码的不是注册策略,而是发送验证码的验证策略。我不知道对于期望的体验是否可以接受,但是发送验证码的自定义策略必须与验证它的策略相同。
(还有另一种流程,在该流程中,注册策略完成之后,您的最终应用程序会发送一条包含验证链接的自定义电子邮件,当最终用户打开该电子邮件时,最终应用程序会对其进行验证,然后进行验证政策-减去电子邮件验证步骤,因为已验证电子邮件地址-已启动。)
如果您对这种提议的解决方案感兴趣,那么我可以尝试基于the custom policy starter packs中的一种来提供自定义策略的完整详细信息。
已于2019年2月15日更新
我已将以下自定义策略示例发布到this GitHub repository。第二和第三项政策实现了上述流程。
sign_up_sign_in
使用电子邮件地址和注册本地帐户。提示最终用户验证电子邮件地址和电话号码。
使用电子邮件地址或登录本地帐户。如果尚未验证电子邮件地址,则会提示最终用户验证电子邮件地址。如果尚未验证电话号码,则会提示最终用户验证电话号码。
sign_up_without_verification
使用电子邮件地址和注册本地帐户。不会提示最终用户 验证电子邮件地址或电话号码。
使用验证登录
使用电子邮件地址或登录本地帐户。如果尚未验证电子邮件地址,则会提示最终用户验证电子邮件地址。如果尚未验证电话号码,则会提示最终用户验证电话号码。