当前位置: 首页 > 知识库问答 >
问题:

当用户未在Azure AD B2C中注册时,如何禁用验证码电子邮件

王兴腾
2023-03-14

Azure B2C无密码登录电子邮件验证将验证代码发送到每个电子邮件地址(即使没有用户未在目录中注册)。在输入OTP(非注册用户)后,B2C验证了代码并说“电子邮件地址已验证。您现在可以继续”。现在,当用户单击“继续”时,他们会收到错误“无法找到提供的用户ID的帐户”。这就是我们确定非注册用户的地方。

我找到了这个解决方案,但在更新当前策略后没有得到结果。我在这里包括我更新的扩展文件。

或者,如果它有另一种方法,在用户未在Azure AD B2C中注册时如何禁用验证码电子邮件。

共有2个答案

郜联
2023-03-14

我已经尝试过这个策略(附上链接),效果很好。

https://github.com/azure-ad-b2c/samples/tree/master/policies/pwd-reset-email-exists

正确的方法是,不要通过向未注册的用户发送验证电子邮件来向用户发送垃圾邮件,也不要告诉用户电子邮件不正确或帐户不存在,因为这样攻击者就会发现这是不是错误的电子邮件,并防止对您的登录页面进行暴力攻击。因此,您可以使用该策略禁用验证码电子邮件,并关闭Raise错误标志(RaiseErrorIfClaimsPrincipalDoesNotExist=false):

吴峰
2023-03-14

改变

<ClaimsExchange Id="SignIn-WithEmail" TechnicalProfileReferenceId="LocalAccountDiscoveryUsingEmailAddress-SignIn" />

xml prettyprint-override"><ClaimsExchange Id="SignIn-WithEmail" TechnicalProfileReferenceId="LocalAccountDiscoveryUsingEmailAddress-AcctExists" />

现在,您的用户旅程将调用您的技术配置文件,该配置文件使用emailVerfy ationControl显示控件,其中包含仅在帐户存在时发送电子邮件OTP的逻辑。

 类似资料:
  • 当用户尝试重置密码时,AzureB2C会给人一种错误的印象,即用户在目录中。 以下是重置密码的步骤:1)用户单击重置密码链接 2) B2C显示一个带有“电子邮件地址”字段的页面,并表示“需要验证。请单击发送按钮。” 3) 用户输入其电子邮件地址并单击“发送验证码” 4)B2C发送校验码this that电子邮件地址(即使没有用户与该电子邮件地址相关联。这是用户认为他在系统中注册的地方) 5) 现在

  • > 我已经安装了strapi的发送网格模块。 <区块报价> npm我strapi提供商电子邮件 但无论何时我注册了一个用户,返回的错误代码是400,也没有邮件被发送。 后 /auth/local/register 控制台截图。 帮我处理它!!

  • 在用户注册Firebase之前,我应该如何验证电子邮件地址?我知道电子邮件地址已通过,但这仅适用于当前用户。因此,必须在发送验证电子邮件之前创建用户。这不会有多大帮助,因为您显然必须在将电子邮件添加到数据库之前验证它。因此,什么是好的解决方法?

  • 我正在提示我的应用程序用户提供电子邮件凭据。 在用户插入电子邮件并通过后,我想验证该帐户。 我正在使用javax。邮政有没有办法验证帐户?只确保凭据确实有效——否则我想显示一个无效用户并传递消息。 也许是某种表演方式: 并在不发送任何内容的情况下检查身份验证异常。

  • 如果您的电子邮件未经验证,我的登录页面将重定向到另一个页面。这第二页是为了迫使用户验证电子邮件。页面加载后,验证邮件将与以下内容一起发送: 现在用户转到电子邮件并单击验证链接。 我如何在我的代码中设置一个侦听器,在验证电子邮件后启动一个函数??

  • 我正在使用Vue,这是我的注册方法,它所做的是注册任何电子邮件ID... 我已在 Firebase 控制台中配置了电子邮件验证。现在,我希望注册方法发送验证邮件,并且只有在用户已验证电子邮件时才注册用户。 我应该如何修改现有代码?我很困惑。