Size: a a a

JavaScript.Ninja

2021 July 05

Y

Yevhen in JavaScript.Ninja
Что Вы имеете в виду под "access token"?
источник

ДМ

Дмитрий Моисеев... in JavaScript.Ninja
тот который хранится в базе, что бы можно было его инвалидировать и отзывать
источник

ДМ

Дмитрий Моисеев... in JavaScript.Ninja
refreshToken позволяет его обновлять
источник

ДМ

Дмитрий Моисеев... in JavaScript.Ninja
и accessToken имеет малое время жизни
источник

ДМ

Дмитрий Моисеев... in JavaScript.Ninja
в отличии от refreshToken
источник

ДМ

Дмитрий Моисеев... in JavaScript.Ninja
я вобще сомневаюсь что мне подходит такой подход, у меня нет микросервисов, а приложение монолит
источник

ДМ

Дмитрий Моисеев... in JavaScript.Ninja
мне скорей подойдут обычные сессии
источник

ДМ

Дмитрий Моисеев... in JavaScript.Ninja
но решил попробовать реализовать секьюрный способ с jwt
источник

Y

Yevhen in JavaScript.Ninja
В контексте OAuth, access token это токен, который позволяет Вам делать запросы на third party API, к которому Вы получили доступ в процессе OAuth flow.
Я так понимаю, Вы имеете в виду session token для вашего приложения/сервиса
источник

ДМ

Дмитрий Моисеев... in JavaScript.Ninja
да скорей так, просто его так называют в основном в тех статья что я изучал
источник

ДМ

Дмитрий Моисеев... in JavaScript.Ninja
в моей реализации accessToken это просто uid, который в редисе лежит
источник

Y

Yevhen in JavaScript.Ninja
Путаница в терминологии.
Я бы его так не называл)

Если у Вас single page app, то ложить в httponly cookie может быть неудобно.
Обычно JWT (тот, который для сессии) ложат в local storage, а refresh token в httponly cookie.
Поправьте, если я не прав
источник

ДМ

Дмитрий Моисеев... in JavaScript.Ninja
ну у меня так и было изначально, то как в курсе показывалось, токен сессии лежит в localstorage, refresh в куки
источник

ДМ

Дмитрий Моисеев... in JavaScript.Ninja
но посерфив чаты, меня заклевали, мол нельзя это хранить в localstorage
источник

Y

Yevhen in JavaScript.Ninja
Нельзя если нет refresh token
источник

VK

Vladimir Klimov in JavaScript.Ninja
На самом деле не очень понятно, зачем его вообще хранить в персисиентном хранилище
Можно просто в памяти, например
источник

ДМ

Дмитрий Моисеев... in JavaScript.Ninja
и еще момент, может подскажете, по поводу ауэтентификации через oauth провайдеры, типо github/google, я использую passport, и после успешного входа на странице github, после чего в колбеке я делаю редирект на клиент, и устанавливаю в куки refreshToken, а вот токен сессии передать на клиент через url супер плохо?
источник

ДМ

Дмитрий Моисеев... in JavaScript.Ninja
или после того как я отредиректил на клиент, нужно делать запрос на получение сессионого токена, и сохранять его в памяти/localStorage
источник

Y

Yevhen in JavaScript.Ninja
В двух вкладках приложение не будет нормально работать
источник

VK

Vladimir Klimov in JavaScript.Ninja
Почему это?
Вкладки ж все равно шарят куки
источник