Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Google OAuth 기반 인증 시스템 도입 #27

Closed
4 tasks done
snowykte0426 opened this issue Nov 26, 2024 · 0 comments
Closed
4 tasks done

Google OAuth 기반 인증 시스템 도입 #27

snowykte0426 opened this issue Nov 26, 2024 · 0 comments
Assignees
Labels
invent The functions that we're going to develop refactor Code refactoring must be performed test Test must be carried out

Comments

@snowykte0426
Copy link
Member

snowykte0426 commented Nov 26, 2024

개요💡

  • Google OAuth 2.0를 이용하여 인증 로직을 구현

예상소요시간⏱️

  • 2024/11/26~2024/12/18

담당👤

작업세부사항📑

  • Google OAuth 종속성 추가
  • 인증 로직 구현
  • 기존 Key 기반 인증로직 삭제
  • 기능 테스트
@snowykte0426 snowykte0426 added invent The functions that we're going to develop refactor Code refactoring must be performed test Test must be carried out labels Nov 26, 2024
@snowykte0426 snowykte0426 self-assigned this Nov 26, 2024
@snowykte0426 snowykte0426 pinned this issue Nov 26, 2024
snowykte0426 added a commit that referenced this issue Nov 30, 2024
…ri`` 프로퍼티 "기호 추가

Redirect URI를 지정하는 프로퍼티의 값에 "(큰 따옴표)를 추가하여 문자열임을 확실히 명시하였습니다

Resolves: #27
snowykte0426 added a commit that referenced this issue Nov 30, 2024
code 기반 로그인과 토큰 갱신을 담당하는 엔드포인트를 정의하였습니다

Resolves: #27
snowykte0426 added a commit that referenced this issue Nov 30, 2024
Google OAuth 2.0을 더 쉽게 사용하기 위하여 종속성들을 추가하였습니다

Resolves: #27
snowykte0426 added a commit that referenced this issue Nov 30, 2024
Java Caffeine을 사용할 때 캐시의 Key 명 리스트를 수정하였습니다

Resolves: #27
snowykte0426 added a commit that referenced this issue Nov 30, 2024
일반적인 요청들이 JWT 인증을 통과하기만 한다면 접근할 수 있다는 점에서 착안하여 불필요한 설정을 제거하였습니다

Resolves: #27
snowykte0426 added a commit that referenced this issue Nov 30, 2024
JWT,OAuth2 기반 인증/인가 중 발행할 예외에 그 예외를 처리하는 메서드를 작성하였습니다

Resolves: #27
snowykte0426 added a commit that referenced this issue Nov 30, 2024
전체 Member를 조회하는 컴포넌트와 세부 사항에 따라 특정 Member를 조회하는 컴포넌트로 책임을 분리하였습니다

Resolves: #27
snowykte0426 added a commit that referenced this issue Nov 30, 2024
AccessToken이 유효하지 않을 때 발행될 예외 클래스를 추가 작성하였습니다

Resolves: #27
snowykte0426 added a commit that referenced this issue Nov 30, 2024
filterChain를 위해 JWT를 인증하는 필터 클래스를 작성하였습니다

Resolves: #27
snowykte0426 added a commit that referenced this issue Nov 30, 2024
JWT 토큰을 파싱하는 로직을 구현하였습니다

Resolves: #27
snowykte0426 added a commit that referenced this issue Nov 30, 2024
JWT의 RefreshToken과 관련된 로직들을 구현하였습니다

Resolves: #27
snowykte0426 added a commit that referenced this issue Nov 30, 2024
JWT를 발급하는 로직을 구현하였습니다

Resolves: #27
snowykte0426 added a commit that referenced this issue Nov 30, 2024
계정 정보 데이터에 email 필드를 추가하였습니다

Resolves: #27
snowykte0426 added a commit that referenced this issue Nov 30, 2024
요구 사항이 변경됨에 따라 필요 없어진 메서드를 삭제하고 email로 Member를 조회하는 메서드를 캐싱을 적용하여 추가하였습니다

Resolves: #27
snowykte0426 added a commit that referenced this issue Nov 30, 2024
로그인과 토큰 갱신 엔드포인트에서 사용되는 DTO들을 정의하였습니다

Resolves: #27
snowykte0426 added a commit that referenced this issue Nov 30, 2024
code 기반 로그인 로직을 구현하였습니다

Resolves: #27
snowykte0426 added a commit that referenced this issue Nov 30, 2024
토큰을 갱신하는 로직을 구현하였습니다

Resolves: #27
snowykte0426 added a commit that referenced this issue Nov 30, 2024
계정을 새로 저장하거나 변경사항을 반영하는 컴포넌트를 추가하였습니다

Resolves: #27
snowykte0426 added a commit that referenced this issue Nov 30, 2024
전체 Member를 조회하는 컴포넌트의 이름이 변경됨에 따라 기존 코드도 일부 변경하였습니다

Resolves: #27
snowykte0426 added a commit that referenced this issue Nov 30, 2024
보안설정을 수정하여 JWT,OAuth 인가/인증 시스템에 알맞도록 수정하였습니다

Resolves: #27
snowykte0426 added a commit that referenced this issue Nov 30, 2024
Class 선언문과 메서드 선언문 사이 불필요한 개행을 제거하여 프로젝트 코드의 구조적 일관성을 유지하였습니다

Resolves: #27
snowykte0426 added a commit that referenced this issue Nov 30, 2024
로그인하지 않아도 필요한 엔드포인트에 대해 인증을 요구하지 않도록 수정하였습니다

Related to: #1, #27
snowykte0426 added a commit that referenced this issue Dec 1, 2024
로그인 성공 시 리다이렉트 될 페이지의 URI를 WAS의 엔드포인트에서 Web Page의 URI로 변경하였습니다

Related to: #27
snowykte0426 added a commit that referenced this issue Dec 18, 2024
전학 문제로 인하여 이메일과 실제 학번이 일치하지 않던 문제를 해결하기 위하여 이를 수정하였습니다

Related to: #27
snowykte0426 added a commit that referenced this issue Dec 18, 2024
미래를 위한 TODO 주석을 추가했고 코드 스타일링을 통하여 가독성을 확보하였습니다

Related to: #27
snowykte0426 added a commit that referenced this issue Dec 23, 2024
토큰 검증 전 토큰 파싱을 하던 현재 절차를 검증 후 파싱하는 절차로 변경하여 논리적인 오류를 방지하였습니다

Related to: #1, #27
snowykte0426 added a commit that referenced this issue Dec 25, 2024
기존 Date API에서 더 현대적으로 요구사항에 걸맞는 LocalDateTime을 이용하도록 변경되었습니다

Related to: #27
snowykte0426 added a commit that referenced this issue Dec 25, 2024
KST를 기준으로 시간대를 계산해야 하지만 UTC를 기준으로 계산하던 문제를 해결하였습니다

Related to: #27
snowykte0426 added a commit that referenced this issue Dec 25, 2024
LocalDateTime으로 계산 후 Date로 형 변환을 하며 다시 UTC로 재설정 되던 문제를 해결하였습니다

Related to: #27
snowykte0426 added a commit that referenced this issue Dec 27, 2024
액세스 토큰이 유효한지 검사해주는 API를 구현하였습니다

Related to: #27
snowykte0426 added a commit that referenced this issue Dec 30, 2024
JWT 토큰의 액세스 토큰 유효기간을 1시간에서 23시간으로 연장하였습니다

Related to: #27
snowykte0426 added a commit that referenced this issue Dec 30, 2024
주석을 추가로 작성하고 Request Body에 대한 검증을 진행하도록 하였습니다

Related to: #27, #32
snowykte0426 added a commit that referenced this issue Dec 30, 2024
이메일을 키로 가진 캐시 데이터의 사용빈도가 관련하여 발생하는 문제보다 우선순위가 낮게 가진다고 판단하여 해당 캐시를 삭제하는것으로 결정하였고 이에 따라 캐시를 삭제하였습니다

Related to: #27
snowykte0426 added a commit that referenced this issue Dec 30, 2024
인증과 관련하여 관련 요청의 Request Body 값을 추가적으로 검증하도록 어노테이션을 추가하였습니다

Resolves: #27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
invent The functions that we're going to develop refactor Code refactoring must be performed test Test must be carried out
Projects
None yet
Development

No branches or pull requests

1 participant