Note
Полноценный универсальный сервис для аутентификации пользователя. За доказательство того, что пользователь является истинным отвечает Access токен. За обновление истёкшего токена отвечает Refresh Token.
У сервиса сгенерированы приватный и публичный ключи для подписи токена. Каждый токен подписывается на стороне сервиса приватным (секретным) ключом. А публичный ключ рассылается сервисам, чтобы они могли верифицировать токен. Refresh токен живет долго, а Access -- живет мало. Refresh токен обновляет Access токен по истечении последнего. Внутри базы данных хранится информация о пользователе, его захешированном пароле и прочими секретными данными.
У каждого пользователя есть свой Refresh Токен. Refresh токен обновляется вместе с Access токеном, но Refresh токен может истечь в том случае, если не обновлялся Access токен. То есть если пользователь не использует систему столько, сколько живет Refresh токен. В таком случае пользователь вынужден заново авторизовываться в системе.