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

인증 인가 #25

Merged
merged 11 commits into from
Aug 12, 2024
Merged

인증 인가 #25

merged 11 commits into from
Aug 12, 2024

Conversation

Dr-KoKo
Copy link
Member

@Dr-KoKo Dr-KoKo commented Aug 12, 2024

💡 다음 이슈를 해결했어요.

Issue Link - #21

  • 인증 : Controller에서 @AuthenticationPrincipalLoginCustomer(또는 LoginVendor)의 조합으로 세션이 유지중인 사용자 정보를 조회할 수 있습니다.
  • 인가 : @AuthenticationPrincipal의 required 값이 true임에도 불구하고 사용자 정보가 조회되지 않으면 UnauthenticationException이 발생합니다.

💡 이슈를 처리하면서 추가된 코드가 있어요.

  • ArgumentResovler(Vendor / Customer)
  • LoginVendor / LoginCustomer

💡 이런 고민을 했어요.

  • Vendor와 Customer를 통합한 인증 객체를 만들까?
    • Vendor 및 Customer에 대한 인가 정책이 분리되어 있으므로 (즉, Vendor용 api, Customer용 api가 분리되어 있으므로) 인증 객체를 따로 두어야합니다.
  • Spring Security 의존성 추가될 때 최대한 영향이 적게 만들 수 있을까?
    • CustomArgumentResolver를 구현하고, 추후 AuthenticationPrincipalArgumentResolver (Spring Security에서 제공하는 ArgumentResolver)의 내부 로직을 그대로 사용하면 되겠다.

✅ 셀프 체크리스트

  • 내 코드를 스스로 검토했습니다.
  • 필요한 테스트를 추가했습니다.
  • 모든 테스트를 통과합니다.
  • 브랜치 전략에 맞는 브랜치에 PR을 올리고 있습니다.
  • 커밋 메세지를 컨벤션에 맞추었습니다.
  • wiki를 수정했습니다.

컨트롤러에서 사용할 인증을 요구하는 어노테이션
컨트롤러에서 사용할 인증된 사용자 객체
인증 실패시 발생할 예외
세션에 저장된 Customer 및 Vendor의 정보를 바인딩해주는 ArgumentResolver
`+` supportsParameter
`+` resolveArgument
`+` supportsParameter
`+` resolveArgument
@Dr-KoKo Dr-KoKo added the ✨ Feature 기능 개발 label Aug 12, 2024
@Dr-KoKo Dr-KoKo added this to the 프로토타입 만들기 milestone Aug 12, 2024
@Dr-KoKo Dr-KoKo self-assigned this Aug 12, 2024
@Dr-KoKo Dr-KoKo linked an issue Aug 12, 2024 that may be closed by this pull request
@Dr-KoKo Dr-KoKo marked this pull request as draft August 12, 2024 12:34
@Dr-KoKo Dr-KoKo requested a review from a team August 12, 2024 14:32
@Dr-KoKo Dr-KoKo marked this pull request as ready for review August 12, 2024 14:33
Copy link
Member

@kimhyun5u kimhyun5u left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

좋습니다!

@Dr-KoKo Dr-KoKo requested a review from Hyeon-Uk August 12, 2024 14:51
Copy link
Contributor

@Hyeon-Uk Hyeon-Uk left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@Dr-KoKo Dr-KoKo merged commit c04775f into main Aug 12, 2024
1 check passed
@kimhyun5u kimhyun5u deleted the feature/21_Dr-KoKo_인증_인가 branch August 22, 2024 04:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
✨ Feature 기능 개발
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

[공통] 인증/인가 기능
3 participants