@rmaxzbss

Какой принцип авторизации NextJS + NodeJS?

Всем привет! Я вроде сделал костыльными путями авторизацию, но она супер кривая, потому что иногда слетает. Также мое решение не безопасно. В интернете не смог найти подходящего варианта.

Задача: Нужна проверка роли пользователя, чтобы закрыть доступ к части функционала и страницам. Важно отправлять запросы как с клиента (React), так и с Server side rendering (NextJS) c header authorization 'Bearer ${accessToken}'. Также каждый день истекает accessToken и я его обновляю с помощью refreshToken.

Как я это сделал:
На каждой странице где требуется авторизация я прописал getServerSideProps, в котором запрашиваю из куки accessToken и если его нет пытаюсь запросить новый с помощью refreshToken (который опять же лежит в куки), если его нет то return 404 page. Если удачно получил accessToken передаю его в header authorization 'Bearer ${accessToken}'. И таким образом уже на сервере через middleware проверяю роль и токен, если все ок выдаю ответ.

Я пытался получать accessToken на стороне клиента (React), но тогда я не могу сделать авторизированный запрос в getServerSideProps.

Возможно я что-то забыл описать. Буду благодарен если подскажете более верное решение. Спасибо!
  • Вопрос задан
  • 64 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы