Hey Gal thank you for this amazing thread ive learn alot.
However i have some questions:
- How JWT in memory protects against XSS attacks as if XSS attack occurs an attacker can access all the resources a client has.
- On a "refresh-token" call i saw you are creating both refresh token and an access token, this can eventually increase the login expiration time to indefinitely as we call "refresh_token" before the access token expires and the access token should have short expiry time.
- In case of a common server <-> client communication (not micro services) i dont see the reason why to encrypt the access_token.
You should not read the jwt payload on the client side?