ресурс серверы, к которым собственно предполагается предоставлять доступ.
Предполагаемая реализация:
Пользователь делает запрос из авторизованной зоны, нажав на кнопку "сгенерировать приватный токен"
Запрос идёт в сервер авторизации, где мы генерируем для юзера вечный jwt с нужными скоупами (для простоты), создаём приватный аксес токен, который мы хэшируем bcrypt-ом, так как это сенситив дата, привязываем эту связку к пользователю. Сходу вижу минус в вечном токене и в том, что мы храним его в открытом виде. Шифровать его симметричным ключом что ли? Например, тем же private access token-ом, который будет храниться захэшированным.
Использование юзером:
Пользователь передает в заголовке username + private access token.
На gateway мы ищем пользователя в базе и проверяем, матчится ли pat с хэшом в базе. Если да, то расшифровываем pat-ом вечный токен и передаём его дальше по цепочке к ресурс серверам.
Что скажете? Где я ебанулся?
вечный токен в открытом виде - это очень плохо расшифровка токена на каждый запрос - это нехилая нагрузка на процессор можно использовать refresh_token и хранить его у пользователя зашифрованным, а acces_token ротировать
Обсуждают сегодня