Jwt Token poprawne użycie.

1

Witam wszystkich. Mam małe pytanie dotyczące Jwt. Tworzę sobie apkę składającą się z kilku modułów. W module "Users" mam podstawowe dane użytkownika, jak imię, hasło, email..., jak i logikę odpowiedzialną za logowanie, zmianę hasła itp. Ktoś się loguje, sprawdzam czy jest w bazie i jeśli tak to tworzę token. W drugim module mam logikę odpowiedzialną za wypożyczanie aut. I nie wiem czy dobrze zrozumiałem. Jeśli chciałbym zabezpieczyć ten drugi moduł, to mogę podać Token który wygenerowałem w module "Users", stworzyć filtr np "OnePerRequestFilter" który sprawdzi czy token jest prawidłowy i do tego na podstawie danych z Tokena takich jak "id" i username", mogę stworzyć sobie jakiś obiekt "Authentication" który wrzucę do contextu Springa i będę mógł go używać do późniejszych działań? Dzięki temu, że będę miał ten obiekt Authentication będę wiedział jaki użytkownik jest zalogowany? Mam to już zaimplementowane, ale nie jestem pewien czy o to chodzi. Z góry dziękuję za odpowiedź.

1

Proszę https://www.baeldung.com/spring-security-oauth-resource-server

Generalnie jest tak jak piszesz, na podstawie tokena, który przychodzi w requescie musisz zapylić security context, dalej już standardowo. Oczywiście przed zapyleniem weryfikacja tego tokenu.

1

stworzyć filtr np "OnePerRequestFilter" który sprawdzi czy token jest prawidłowy i do tego na podstawie danych z Tokena takich jak "id" i username", mogę stworzyć sobie jakiś obiekt "Authentication" który wrzucę do contextu Springa i będę mógł go używać do późniejszych działań? Dzięki temu, że będę miał ten obiekt Authentication będę wiedział jaki użytkownik jest zalogowany? Mam to już zaimplementowane, ale nie jestem pewien czy o to chodzi.

30 lat temu pewnie tak. Dzisiaj wystarczą 3 linijki w konfiguracji Spring security i samo się zrobi. Nie trzeba nic dodatkowo implementować. Zgaduje że skopiowałeś ten kawałek kodu z jakiegoś tutoriala starszego od ciebie.
https://github.com/Pharisaeus/almost-s3/blob/master/server/src/main/java/net/forprogrammers/almosts3/server/configuration/SecurityConfiguration.java

1 użytkowników online, w tym zalogowanych: 0, gości: 1