인프런 커뮤니티 질문&답변

냠냠냠님의 프로필 이미지

작성한 질문수

스프링 시큐리티 완전 정복 [6.x 개정판]

회원 관리 시스템 기본 구성

jwt와 oauth2 활용!

24.09.05 07:29 작성

·

47

0

강사님 안녕하세요! 제가 강의를 다듣고 jwt와 oauth2를 활용해서 연습해보려고하는데요! 혹시 jwt와 oauth2를 사용하려면 넣어야하는 그래들 의존성이라든지 기타 조언해주실점 있으면 받고싶습니다!

답변 2

0

정수원님의 프로필 이미지
정수원
지식공유자

2024. 09. 10. 06:07

본 강의에서는 oauth2 관련 내용은 주제를 벗어나서 구체적인 답변을 드리기 어려운점 양해 부탁드립니다

다만 아래 ai 답변처럼 의존성 구성은 가능하나 이건 스프링에서 oauth2 프레임워크를 별도로 제공하고 있고 oauth2 프레임워크를 사용해서 구현하는게 더 바람직합니다

시중에는 jwt 라이브러리를 스프링시큐리티에 접목해서 구현하는 방법도 여럿 나와 있으니 참고 부탁드립니다

저의 강의 중 Oauth2 를 다루는 강의도 있으니 참고 바랍니다

0

인프런 AI 인턴님의 프로필 이미지

2024. 09. 07. 07:31

안녕하세요, 인프런 AI 인턴입니다.

냠냠냠님, jwt와 oauth2를 스프링 시큐리티와 연동하여 사용하려면 필요한 의존성과 조언을 찾고 계신 것으로 이해했습니다. 스프링 부트를 사용한다고 가정할 때, jwt와 oauth2를 적용하기 위한 기본적인 의존성 추가 방법과 권장 사항을 아래와 같이 안내드립니다.

  1. Gradle 의존성 추가: 스프링 시큐리티와 OAuth2를 사용하기 위해서는 먼저 프로젝트의 build.gradle 파일에 필요한 의존성을 추가해야 합니다.

    • 스프링 시큐리티와 OAuth2 지원을 위한 의존성은 아래와 같이 추가할 수 있습니다. 정확한 버전은 스프링 부트 프로젝트와 호환성을 고려하여 선택하세요.
    implementation 'org.springframework.boot:spring-boot-starter-security'
    implementation 'org.springframework.boot:spring-boot-starter-oauth2-client'
    implementation 'org.springframework.boot:spring-boot-starter-oauth2-resource-server'
    
  2. JWT 및 OAuth2 사용 시 고려 사항:

    • JWT와 OAuth2를 사용하려면, 인증 서버를 별도로 구축하거나 기존의 인증 서비스(예: 구글, 페이스북 등)를 활용할 수 있습니다.
    • spring-security-oauth2-authorization-server 등을 classpath에 추가하고 해당 설정을 통해 OAuth2 인증 서버를 구축할 수 있습니다.
    • 인증 서버를 설정할 때 client-id, client-secret 같은 인증 정보를 정의하고, 이 정보를 사용하여 애플리케이션에서 OAuth2를 구성해야 합니다.

다만, OAuth2와 JWT를 어떻게 효과적으로 함께 사용할지에 대한 구체적인 구현 방법은 프로젝트의 요구 사항과 보안 요구 사항에 따라 달라질 수 있습니다. 따라서 항상 최신의 스프링 시큐리티 문서를 참고하고, 보안 관련 커뮤니티의 모범 사례를 검토하는 것이 중요합니다.

자세한 내용은 Spring SecurityOAuth2 공식 문서를 참고해 주세요.

감사합니다.