Как я должен знать, что getDetails()
, getPrincipal()
и т. Д. Возвращается на SecurityContextHolder.getContext().getAuthentication()
? Тип - это объект, и я не могу понять, что написано в документации.Способы аутентификации объекта весной безопасности
ответ
Как насчет этого? (При условии, getPrincipal()
не возвращает null
)
String className = SecurityContextHolder.getContext().getAuthentication().getPrincipal().getClass().getName();
Она должна возвращать имя класса прикрепленную с именем пакета, то есть полное имя класса. Я думаю, что тип будет чем-то (некоторым весенним классом), который реализует java.security.Principal
. Таким образом, вы можете сделать следующее:
Principal p = (Principal) SecurityContextHolder.getContext().getAuthentication().getPrincipal();
getDetails()
возвращает объект WebAuthenticationDetails который содержит IP-адрес пользователя и SESSIONID (хотя я подозреваю, что это может зависеть от типа приложения, поскольку getPrincipal()
также зависит, это стоит причина в том, что getDetails()
также может быть изменена аналогичным образом).
getPrincipal()
возвращает объект, который зависит от того, как вы управляете аутентификацией. При аутентификации LDAP, например, метод getPrincipal()
возвращает объект LdapUserDetailsImpl.
Если вам необходимо получить доступ пользователей/основной информации, я создал класс пользовательских UserDetails, и магазин/получить информацию, необходимую оттуда, но можно так же легко использовать getPrincipal()
и getDetails()
условии, что вы бросили их в качестве или вы расширяете классы, которые они, естественно, возвращают (и управляют ими, как вам нравится).
Это довольно забавно, я считаю обязательным отметить, что метод getPrincipal()
фактически не возвращает объект Principal (и объект LdapUserDetailsImpl не может быть отличен как объект Principal).
- 1. Способы аутентификации весенней безопасности
- 2. многократный менеджер аутентификации весной безопасности
- 3. Извлечение объекта аутентификации с использованием идентификатора сеанса весной безопасности
- 4. SSO с весной безопасности
- 5. весной безопасности datamodel
- 6. Способы обработки груза весной
- 7. BCryptPasswordEncoder весной безопасности
- 8. Как использовать имя пользователя с использованием безопасности: тег аутентификации весной?
- 9. Сдача весной безопасности выбирает реализацию класса, реализующего поставщик собственной аутентификации
- 10. Ошибка аутентификации весной безопасности с использованием активного каталога
- 11. анонимной аутентификации весной 403
- 12. Альтернативные способы аутентификации
- 13. Ошибка весной безопасности kerberos
- 14. Таблицы весной безопасности
- 15. Oauth2 Client весной безопасности
- 16. Расширение безопасности весной UsernamePasswordAuthenticationFilter
- 17. весной безопасности не работает
- 18. глобальная авторизация весной безопасности
- 19. роли весной вопросы безопасности
- 20. Ошибка аутентификации весной security.xml
- 21. Различные способы обеспечения безопасности с использованием весенней системы безопасности
- 22. Множественная аутентификация с весной безопасности
- 23. Возможно ли изменить поля аутентификации в аутентификации OAuth для обеспечения безопасности весной?
- 24. Ошибка безопасности аутентификации форм
- 25. Firebase проблемы безопасности/аутентификации
- 26. Ошибка аутентификации весны безопасности
- 27. уточнение весной безопасности относительно названий полей?
- 28. Различные способы аутентификации в ASP.Net
- 29. Имитация анонимной аутентификации весной. Тест модуля MVC.
- 30. весной безопасности не принимают мой стол пользователя