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

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

password
admin
user

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

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

Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
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%» — нет, заключается в том, что первые три написаны строчными буквами, а последний — нет. Это не специальный символ.

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