Я работаю с пользовательской политикой AD B2C. Я установил порог блокировки учетной записи, и он работает нормально. Теперь у меня есть сценарий: если пользователь пытается войти в систему с несуществующим именем пользователя, после нескольких попыток, скажем, 10 раз, возможно ли отобразить пользовательское сообщение об ошибке «Слишком много допустимых попыток»?
Есть ли способ отобразить сообщение о блокировке учетной записи для несуществующей учетной записи пользователя из-за слишком многократных неправильных попыток в AD B2C?
Ответы (1)
На самоутверждающемся TP вы можете использовать метаданные setting.retryLimit.
Определяет, сколько раз пользователь может попытаться предоставить данные, которые проверяются на соответствие техническому профилю проверки. Например, пользователь пытается зарегистрироваться с уже существующей учетной записью и продолжает попытки, пока не будет достигнут предел.
Таким образом, если у вас есть технический профиль проверки, который отвечает за проверку несуществующего имени пользователя, после повторных попыток setting.retryLimit ваше приложение получит конкретную ошибку.
AADB2C90157: Пользователь превысил максимальное количество повторных попыток для самоутвержденного шага.
Вы можете перехватить это в своем приложении и показать пользователю пользовательское сообщение.
РЕДАКТИРОВАТЬ:
Если вы хотите отобразить ошибку на самой странице самоутверждения, вы можете поместить технического поставщика проверки RESTful (т. е. функцию Azure) сразу после проверки подлинности. Если пользователь будет найден, у вас будет objectId, и вы даже можете пропустить вызов функции Azure. Если objectId пуст, вы вызовете функцию Azure, передав имя входа, и сохраните новую попытку где-нибудь (в хранилище таблиц Azure?). Всякий раз, когда вы, несуществующий пользователь, достигает предела, вы возвращаете 409 с пользовательским сообщением. Это сообщение будет показано на странице Self-Asserted. Я не пробовал, но логически это может сработать. Вы должны настроить setting.retryLimit, чтобы избежать возврата к вашему приложению с ошибкой до того, как будет показано пользовательское сообщение.
ХТХ, Ф