Czy istnieje jeszcze możliwość ustawienia obiektu List<GrantedAuthority>
w obiekcie Authentication/UserDetailsImpl? W mojej aplikacji mam dwie warstwy zabezpieczeń, jedną do logowania (która używa mojego niestandardowego uwierzytelnienia logowania, w klasie ustawiam obiekt Authentication
przy użyciu UsernamePasswordAuthenticationToken
) i jedną dla "pytania wymagającego odpowiedzi", w którym użytkownik jest proszony o odpowiedź konkretne pytanie.Spring Security: Set GrantedAuthority
Co chcę zrobić, to dodać GrantedAuthority
do aktualnego List<GrantedAuthority>
, który został utworzony podczas procesu logowania, po tym jak użytkownik odpowie na pytanie o wyzwanie.
Czy to możliwe?
Jedno wyjaśnienie w tej sprawie jest to, co klasa realizacja UserDetails jest. Spring nie zapewnia żadnej klasy o nazwie UserDetailsImpl. JdbcDaoImpl tworzy instancję klasy User, podczas gdy wersja LDAP tworzy instancję LdapUserDetailsImpl. Tak naprawdę zależy to w dużym stopniu od tego, jaki typ obiektu otrzymujesz, czy możesz zmienić władze. Nigdy tak naprawdę nie użyłem jednej z implementacji UserDetails dostarczanej przez Spring właśnie ze względu na takie rzeczy jak niezmienne zestawy dla autoryzowanych autorytetów, co jest czymś, co można zmienić. –