Значение фигурных скобок при выполнении аутентификации в памяти - PullRequest
0 голосов
/ 13 мая 2019

Проходя по этой ссылке для безопасности Spring REST, я наткнулся на этот код:

auth.inMemoryAuthentication()
    .withUser("admin")
    .password("{noop}password")
    .roles("USER");

Я проверил учебник, но не нашел значения {noop} в разделе паролей.

1 Ответ

1 голос
/ 13 мая 2019

Это указанный кодировщик пароля;Например, это сообщение в блоге :

Формат хранения пароля

Общий формат пароля:

{id}encodedPassword

Такой, чтоid - это идентификатор, который используется для поиска, который PasswordEncoder должен использоваться, а encodedPassword - исходный кодированный пароль для выбранного PasswordEncoder.

noop - это сокращение от "нет".операция "и означает, что пароль хранится в виде простого текста, поэтому пароль просто password.Вы можете видеть, что это используется далее по ссылке, которую вы разместили, где заголовок Authorization установлен в Basic YWRtaW46cGFzc3dvcmQ=, который декодируется в admin:password.


Для любого примечания по использованию, не относящегося к демоверсии, котороесогласно документации класса :

Этот PasswordEncoder не является безопасным.Вместо этого используйте адаптивную одностороннюю функцию, такую ​​как BCryptPasswordEncoder, Pbkdf2PasswordEncoder или SCryptPasswordEncoder.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...