Top reason for me always was : > You cannot invalidate individual JWT tokens And there are more security problems. Unlike sessions - which can be invalidated by the server whenever it feels like it - individual stateless JWT tokens cannot be invalidated. By design, they will be valid until they expire, no matter what happens. This means that you cannot, for example, invalidate the session of an attacker after detecti…
Not true. Encode a token and validate it against a constant, which you change in case of a compromise.
Instead of `SELECT isValid from tokens where token=""`, why not `SELECT user from sessions where session=""`?