Черный список паролей Keycloak не работает со специальными символами

У меня есть текстовый файл с паролями из черного списка, и я установил имя файла для аутентификации -> Политика паролей -> Черный список паролей в keycloak. Если есть простые пароли, такие как

password
admin
user

Это работает хорошо - когда я пытаюсь изменить пароль, я вижу это сообщение Error! Invalid password: password is blacklisted. Но когда я добавляю в этот список более сложный пароль, например Music.1%, это не работает - я могу изменить пароль на этот.

Почему это так работает и есть ли способы занести в черный список похожие пароли в файле?

Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
Что такое управление транзакциями JDBC и как оно используется для поддержания согласованности данных?
Что такое управление транзакциями JDBC и как оно используется для поддержания согласованности данных?
Управление транзакциями JDBC - это мощная функция, которая позволяет рассматривать группу операций с базой данных как единую единицу работы. Оно...
Выполнение HTTP-запроса с помощью Spring WebClient: GET
Выполнение HTTP-запроса с помощью Spring WebClient: GET
WebClient - это реактивный веб-клиент, представленный в Spring 5. Это реактивное, неблокирующее решение, работающее по протоколу HTTP/1.1.
Gradle за прокси-сервером
Gradle за прокси-сервером
Создайте проект Gradle под сетевым прокси.
1
0
1 762
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Из документации Keycloak можно прочитать следующее:

Черный список паролей

Эта политика проверяет, является ли заданный пароль (преобразованный в нижний регистр) содержится в файле черного списка, который потенциально может быть очень большим файлом. Черные списки паролей представляют собой простые текстовые файлы UTF-8 с окончаниями строк Unix. где каждая строка представляет собой пароль из черного списка. Все пароли в черный список должен быть написан строчными буквами, чтобы обеспечить нечувствительность к регистру сравнение. Имя файла черного списка должно быть указано как значение политики паролей, например. 10_million_password_list_top_1000000.txt. Файлы черного списка разрешены против ${jboss.server.data.dir}/password-blacklists/ по умолчанию. Этот путь можно настроить через keycloak.password.blacklists.path системное свойство или свойство blacklistsPath passwordBlacklist policy Конфигурация SPI.

Причина, по которой пароли «пароль», «админ» и «пользователь» работают, а «Музыка.1%» — нет, заключается в том, что первые три написаны строчными буквами, а последний — нет. Это не специальный символ.

Другие вопросы по теме