oAuth 질문입니다.
356
작성한 질문수 17
세션이 아닌 REST API로 접근을 한다고 했을 때, 어떤식으로 구현을 해야 하는지 질문을 드립니다.
우선 생각했던 방법은 로그인 시에 각 oAuth 제공 플랫폼이 주는 고유 식별 값이 있으니 그걸 DB에 저장하고, 매 Request마다, accessToken의 유효성 검사 및, 고유 식별자 값이 DB에있다면 DB에 접근, 없으면 회원가입 이러한 방식으로 구현하려 했으나, 모든 Request마다, oAuth서버에 접근해서 알아오는 것이 과연 맞는가 생각해보게 되었습니다.
혹시 accessToken과 refreshToken, expire을 DB에 저장해놓고 있고, 내부 로직으로만 확인하고 독자적으로 저만의 JWT를 구성하고 인증을한 다음 해당 플랫폼의 정보에 접근할 때만 oAuthAccessToken을 사용하면 되는 것인지요...
조언부탁드립니다...
답변 3
1
카카오 로그인 때 보내주는 accessToken과 refreshToken은 그 이후로 카카오 API를 호출할 때만 의미가 있습니다. 독자 API 서비스를 할 때는 accessToken과 refreshToken 모두 직접 구현하셔야 합니다.
0
아 현재 로컬전략이아닌 카카오로만 로그인을하려고하고있습니다.
카카오로 로그인할 경우, 카카오가 최초로그인시에
유저식별자 aceessToken refreshToken 두 토큰의 만료시간 이렇게보내주는데, 저의 궁금점은 저의 독자 api서비스시에, 이 acessToken의 유효성을 매 request마다 카카오에 확인을해야하는지,
아니면 제 서비스만의 token을만들어 그것으로 유저인증 및 인가를진행하고, 카카오 서비스를 이용할때만
카카오 accessToken을 인증하면되는것 인지 였습니다.
혹시 두방법 둘다 오답일까요?ㅠ
0
보통 accessToken은 DB에 저장하지 않고 클라이언트로 보내고, refreshToken과 고유식별자는 DB에 저장합니다(refreshToken은 redis같은 메모리 서버에 저장해도 됩니다).
accessToken(유효시간 5분~1시간)이 유효하다면 유효한 동안에는 refreshToken(1시간~며칠)이나 고유식별자는 검사하지 않고 accessToken으로 모든 걸 다 허용합니다. accessToken이 만료되었다면 refreshToken으로 재발급하는 것이고요. refreshToken마저 만료되었다면 다시 로그인하거나 그래야 합니다. 고유식별자는 id이므로 바뀔 일이 없으니 저장하면 됩니다.
JWT는 토큰의 종류로 accessToken을 JWT 형식으로 만들면 좋습니다. 정보를 담을 수 있어 accessToken을 더 적극적으로 쓸 수 있습니다.
실제 서비스에서도 cluster를 사용하나요?
1
313
2
캐싱에 관하여
0
278
3
salt를 실무에서 사용할때 항상 randomBytes로 만들어줘야 하나요?
0
345
1
게시물 올리기 오류
0
407
1
캐슁 이후 로그인창
0
266
1
kakao passport 질문있습니다.
0
493
3
global객체 공유 질문드립니다.
1
417
1
서버가 죽어버리네요
0
1047
8
포링키 문제..
0
234
2
커넥션 플래시 설치문제
0
216
2
익스프레스 제너레이터? 설치문제
0
2585
6
redis 질문입니다.
0
305
1
9장 세션을 DB에 저장시 리다이렉션 오류 발생
0
872
8
프레임워크 선택에 관하여 질문이 있습니다.
0
300
3
시퀄라이즈 질문입니다 ! !
0
588
1
리뉴얼 강의 12강 socket.io에서 req.session접근 관련 질문
0
922
6
GCP 질문입니다.
0
366
1
Passport 모듈 로그인 구현관련
0
720
6
카카오 로그인 관련 질문입니다!!
0
605
4
스스로 해보기 10-16 nunjuncks 질문있습니다
0
495
5
제로초님 HTTP 완벽가이드 추천해주신거 너무 잘 읽었습니다.
0
312
2
gif채팅방 nunjucks관련 질문입니다!
0
332
3
현영님 몽고db관련 질문입니다.
0
229
3
github 코드 질문있습니다
0
152
1





