Spring Security/Ключевые сервисы Spring Security: различия между версиями

Содержимое удалено Содержимое добавлено
Строка 48:
UserDetails loadUserByUsername(String username) throws UsernameNotFoundException;
</source>
 
Возращаемый <code>UserDetails</code> представляет собой интерфейс, который предоставляет геттеры, которые гарантируют not-<code>null</code> результаты аутентификационной информации, такие как имя пользователя, пароль, предоставленные полномочия и является ли учетная запись пользователя заблокированной или нет. Большинство провайдеров аутентификации будет использовать <code>UserDetailsService</code>, даже если имя пользователя и пароль по факту не используются для принятия решения об аутентификации. Они могут использовать объект <code>UserDetails</code> просто для получения информации о <code>GrantedAuthority</code>, потому что некоторые другие системы (например, LDAP и X.509 или CAS и т.д.) берут на себя ответственность за фактическое подтверждение полномочий.
 
Данный <code>UserDetailsService</code> настолько прост в реализации, что пользователи смогут легко запросить аутентификационную информацию с использованием одной из стратегий сохранения данных. Надо сказать, что Spring Security включает пару полезных базовых реализаций этого интерфейса, которые мы рассмотрим ниже.
 
== Аутентификация In-Memory ==