Azure AD B2C不检查电子邮件是否存在

时间:2019-08-08 08:48:00

标签: azure-active-directory azure-ad-b2c

我有一个Azure AD B2C设置,无论我在忘记密码电子邮件的字段中插入哪一封电子邮件,都会将验证码电子邮件发送到该电子邮件。

即使“用户”列表中不存在该电子邮件。

这是默认行为吗?

This is the link I have for recover password

URL中是否有任何缺少的属性可以强制检查用户列表中是否存在电子邮件?

3 个答案:

答案 0 :(得分:0)

这是设计使然。并且它将尝试发送验证码而不验证电子邮件是否存在。

通过考虑安全措施,这就是它应该如何工作的。

答案 1 :(得分:0)

我可以确认这种行为,但是找不到有关为什么它可以正常工作的参考。像许多安全方面的事情一样,我很确定这是设计上的折衷。

某些服务(例如Evernote)也是如此,即无论地址是否已注册,它们都会发送密码重置电子邮件。

  • 从好的方面来说,这是对用户的一种早期警报,即某人正在尝试访问其(不存在的)帐户,因此可能来自其他网站的网络钓鱼尝试。
  • 问题是用户收到不请自来的电子邮件,并且如果有人想惹恼他/她,则要做的就是发送多个重置密码请求。用户很无奈,他无法阻止电子邮件。因此,我认为该服务可以通过将重置密码请求的数量限制为合理的数量(例如,每小时最多10个,但每5分钟不超过3个)来缓解这种情况。

其他服务(例如Dropbox)采用另一种方法,仅将电子邮件发送到使用其服务注册的地址。

  • 这可以防止“电子邮件炸弹”问题
  • 另一方面,它不会提醒用户有关登录尝试的信息

像您一样,我认为后一种方法更好,因为我在前一种方法中看到的唯一好处是向未注册您服务的用户发出了“早期警告”。另外,了解预警需要一些用户的技巧。但是显然,微软则采取了另一种方式。

“用户”刀片中有一个“密码重置”项,但唯一的选项是“无”和“全部”。有趣的是,此选项的工具提示中提到了一个不存在的“选定”选项,因此将来可能会在此处显示一些更细粒度的设置。

答案 2 :(得分:0)

如果用户在发送消息之前就已经存在,那么如果您想存在,则必须编辑SendCode Action。因此,只有当用户存在于B2C端时,它才会发送验证码。

下面是一个很好的链接,可以帮助您。 https://github.com/azure-ad-b2c/samples/tree/master/policies/pwd-reset-email-exists