dev.Log

인증과 인가 본문

BACKEND.*

인증과 인가

초코푸딩 2022. 9. 30. 02:15

- 인증 : 식별가능한 정보로 서비스에 등록된 유저의 신원을 입증하는 과정

- 인가 : 자원을 적절한/유효한 사용자에게 전달/공개 하기 위한 방법

 

1. 인증하기 : Request Header

Base64를 통해 URL Encoding을 거치고 난 것을 요청헤더의 Authorization : afeasd4f35asdfasd에 넣어서 보냄

* URL Encoding 하는 이유?

 

2. 인증유지하기 : Browser

Cookie 이용 -> 보안상 이슈..

 

 

3. 안전하게 인증하기 : Server

Session Storage 이용...

 

4. 효율적으로 인증하기 : Token

JWT 이용... 사용자정보. 이름.만료시기. 권한

토큰도 탈취당할 수 있기 때문에 -> access토큰과 refresh 토큰 이용한다.

refresh토큰만 저장소에 저장해둠..

access 토큰을 통해 사용자가 요청을 보냄 -> 어랏 만료된 access토큰이라고 서버가 알려줌

-> 만료되었을때 브라우저가 acess토큰과 refresh 토큰을보냄

-> 서버에서 저장했던 refresh토큰과 비교 후에 맞으면 새로운 access토큰을 발급해줌

 

5. 다른 채널을 통해 인증하기 : OAuth

 

출처: https://www.youtube.com/watch?v=y0xMXlOAfss

'BACKEND.*' 카테고리의 다른 글

동시성 제어  (0) 2022.10.07
데이터베이스 Lock  (0) 2022.10.06
Spring Batch의 스케일링  (0) 2022.09.29
Spring Batch  (1) 2022.09.29
Kafka Producer  (0) 2022.09.29
Comments