Autentykacja w mojej aplikacji wykonywana jest przez Auth0. Kiedy uzytkownik loguje sie komunikacja przechodzi przez load balancer, ktory pobiera token z Auth0 i zwraca go do aplikacji. Przy wykonywaniu kolejnych requestow, mimo oczekiwan load balancer, nie weryfikuje i nie odswieza tokenu. Moj uzytkownik przez 24h moze pracowac na tym samym tokenie. Mimo tego, ze token moze byc juz dawno nieaktywny.
Odnosnie tej dokumentacji: https://docs.aws.amazon.com/elasticloadbalancing/latest/application/listener-authenticate-users.html
"If the session timeout is longer than the access token expiration and the IdP supports refresh tokens, the load balancer refreshes the user session each time the access token expires. The load balancer has the user log in again only after the authentication session times out or the refresh flow fails."
Oczekiwalem ze token bedzie sie odswiezal. Moje ustawienia dla Auth0 sa poprawne i prawidlowo odswiezaja i uniewazniaja token.
Jest jakies optymalne rozwiazanie dla mojego problemu? Nie da sie prawdopodobnie zrobic przez konfiguracje ALB, kontaktowalem sie nawet z wsparciem AWS i nie maja na to rozwiazania.
Aktualnie 2 opcje jakie widze to:
-
przeniesienie logiki odswiezania do mikroservice, ale to wymaga przerobienia chyba połowe aplikacji
-
utworzenie lambdy, do ktorej bedzie przekierowanie z Load Balancera i ona byla by odpowiedziala za odswiezenie i sprawdzenie waznosci tokenu. Ale nie wiem czy to zadziala.
#aws #programowanie
