2024/06/19 4

세션 인증 방식과 JWT 인증방식

1. 인증과 인가 1) 인증 : 사용자가 서버에 로그인을 요청하면 서버가 해당 사용자가 맞는지를 검증하는 과정. 로그인 등 증명과 관련.  2) 인가 : 인증 이후에 인증된 사용자에 대한 자원 접근 권한 확인 절차. 글 작성, 수정, 삭제 등 권한과 관련. 2. HTTP의 비 상태성 (Stateless) 서버는 클라이언트의 상태를 저장하지 않기 때문에 클라이언트의 요청이 있을 때 마다 새로운 인증 절차를 거쳐야 한다.하지만 이렇게 되면 서버에 요청을 보낼때마다 로그인을 하도록 요청을 해야 하는데 이는 매우 불편한 방식이다.  3. 인증 과정1) 세션 기반 인증세션 기반 인증은 사용자의 인증 정보를 서버에서 저장하고 있는 방식이다. 클라이언트가 로그인을 하면 서버는 인증 정보를 서버의 세션 저장소에 저장하..

카테고리 없음 2024.06.19

액세스 토큰을 cookie에 저장하는 방법

def login(response:Response....):     access_token = manager.create_access_token(    data={"sub": {"id": user["id"], "name": user["name"], "email": user["email"]} } )    # access_token 발급 response.set_cookie(key="access_token",value=access_token,httponly=True)   1. 서버에서 쿠키 설정: 서버에서 사용자 인증 후, JWT 토큰을 생성하고 이를 쿠키에 저장해야 합니다. 이를 위해 HTTP 응답 헤더에 **Set-Cookie**를 설정하여 토큰을 전달합니다. FastAPI에서는 response.set_c..

카테고리 없음 2024.06.19

2024. 6. 19. (수) 슈퍼코딩 부트캠프 신입연수원 Day 15 (중간보고)

배운 내용 요약 정리 : 강의 수강 후 배운 내용을 나만의 방식으로 정리1.  웹 프레임워크 1-1. SVELTE vs React1-2. 번들러 (ex. vite[비트])1-3. Firebase : 백엔드 구축 없이 백엔드 역할. / 실시간 DB, 이미지파일 업로드, 유저인증(소셜 로그인) 1-4. 배포!! 2. 번들러가 왜 필요한가?1) Java Script - 간단한 동작을 위해 만들어짐- 모듈 방식이 없는채로 탄생- 하나의 파일을 여러사람이 개발한다면? 관리도 힘들고 찾아가기도 힘들고...2) 모듈 방식이 필요하다- CommonJs라는 모듈 방식이 처음 도입.- npm의 등장으로 모듈을 모두가 공유할 수 있게 됨.- node.js, npm 등이 탄생. 3) 번들러의 탄생- 여러개의 파일을 하나로 합..

카테고리 없음 2024.06.19

2024. 6. 18. (화) 슈퍼코딩 부트캠프 신입연수원 Day 14 (중간보고)

배운 내용 요약 정리 : 강의 수강 후 배운 내용을 나만의 방식으로 정리1. JWT란?- JSON Web Token의 약자로, 유저 인증과 관련된 기술.- Base64로 인코딩 되어 있음- JWT는 사용자 정보를 토큰에 포함시킴.(세션은 사용자 정보를 서버측에서 DB를 통해 관리)- 특정 시간이 지나면 refresh token 발급으로 보안성 향상1-1 Refresh Token1) Access Token의 유효기간은 짧다. (ex. MS:60days, Amazon:1hour)2) Refresh Token의 유효기간은 길다. (ex. MS : 1year)3) 평소에 API 통신할 때는 Access Token을 사용하고, Refresh Token은 Access Token이 만료되어 갱신될 때만 사용한다.즉,..

카테고리 없음 2024.06.19