0

我正在使用 AD B2C 自定义策略。我已经设置了帐户锁定阈值并且工作正常。现在我有一个场景,如果用户尝试使用不存在的用户名登录,经过几次尝试让我们说 10 次是否可以显示自定义错误消息“有效尝试次数过多”?

4

1 回答 1

0

在自断言 TP 上,您可以使用setting.retryLimit元数据

控制用户可以尝试提供根据验证技术配置文件检查的数据的次数。例如,用户尝试使用已经存在的帐户进行注册,并不断尝试直到达到限制。

因此,如果您有一个负责验证不存在的用户名的验证技术配置文件,在setting.retryLimit重试后,您的应用程序将收到特定错误

AADB2C90157:用户已超过自断言步骤的最大重试次数。

您可以在应用程序中拦截它并向用户显示自定义消息。

编辑:

如果你想在自我断言页面本身上显示错误,你可以在身份验证之后放置一个 RESTful 验证技术提供程序(即一个 Azure 函数)。如果找到用户,您将拥有 objectId,您甚至可以跳过对 Azure 函数的调用。如果 objectId 为空,您将调用传递登录名的 Azure 函数并将新尝试存储在某处(Azure 表存储?)。每当您不存在的用户达到限制时,您将返回带有自定义消息的 409。该消息将显示在“自我断言”页面上。我没有尝试过,但从逻辑上讲它可以工作。您必须调整setting.retryLimit以避免在显示自定义消息之前返回您的应用程序并出现错误。

HTH, F

于 2020-01-24T17:28:03.977 回答