inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

스프링 시큐리티 OAuth2

연동 구현 (1)

access token 의 용도

125

leese

작성한 질문수 11

0

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!
- 먼저 유사한 질문이 있었는지 검색해보세요.
- 서로 예의를 지키며 존중하는 문화를 만들어가요.
- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.

 

keycloak,kakao 같은 authorization server 에서 발급하는 access token 은 userinfo 를 가져오기 위한 token 이라고 생각했는데, resource server 같은 자원도 이 토큰으로 접근 하는게 맞는지 궁금합니다. 수업을 위한 예제인지 실제로 이렇게 사용을 많이 하는지요.

카카오같은 인증서버에서 받은 access token 은 카카오에서 유저 정보를 가져오기 위함이고, resource server 의 다른 api 접근 목적은 아니라고 생각했었는데요. 제가 잘못 알고 있었는지 궁금합니다.

java spring spring-boot oauth

답변 1

0

인프런 AI 인턴

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

OAuth2는 인증서버로부터 발급받은 access token을 사용해 자원 서버에 접근하는 일반적인 방식입니다. 이 토큰은 유저 정보(userinfo)를 얻기 위한 용도로 사용될 뿐 아니라, 해당 토큰을 사용하여 자원 서버에서 제공하는 다른 API에 접근할 수 있습니다. 예를 들어, 카카오와 같은 인증서버에서 받은 access token은 카카오에서 제공하는 유저 정보 뿐만 아니라, 그 토큰을 지원하는 다른 자원 서버의 API에도 접근할 수 있도록 설계될 수 있습니다.

따라서 귀하가 언급한대로 유저 정보를 얻기 위한 용도로만 생각할 수 있지만, 실제로는 그 이상의 다양한 자원에 접근하기 위해 사용될 수 있습니다. 실제 용도는 해당 서비스의 OAuth2 구현과 설정에 따라 달라지며, 서비스 제공자가 정의한 권한에 따라 다르게 활용될 수 있습니다.

spring-security-oauth2-resource-server를 예로 들면, Spring Boot는 OAuth2 Resource Server를 설정하는 것을 지원합니다. 이때, access token은 이 서버가 제공하는 다양한 리소스에 접근하는 데에 사용될 수 있습니다. 예를 들어, 설정된 jwk-set-uri 또는 issuer-uri와 같은 정보를 기반으로 JWT의 유효성을 검증하고, 해당 유효한 토큰을 이용하여 자원 서버 내 정의된 서비스에 접근할 수 있습니다.

결론적으로, resource server에 access token을 이용한 접근은 OAuth2 프레임워크의 일반적인 사용 사례 중 하나이며, 실제로 광범위하게 사용되고 있습니다. 따라서 이론적 배경과 실제 구현 방법을 잘 이해하고, 서비스의 요구사항에 맞게 적절히 구현하는 것이 중요합니다.

authorization-server 라이브러리 질문이 있습니다.

0

74

1

loadUser 중 Missing attribute 'preferred_username' in attributes 에러 발생

0

74

2

JWT 조회 에 대한 질문

0

69

1

password grant 방식 에러 응답

0

85

3

FormLoginConfigure에서 생성하는 필터

0

75

2

현업에서 springboot를 3.5.5 를 사용해서 공부중인데...

0

282

2

Jdbc 관련 강의 및 깃헙 문의

0

75

1

OAuth2AuthorizedClient 이해 및 활용 강의 내용 질문

0

207

1

UserInfo 엔드포인트 요청 실습

0

72

1

RFC 문서에서의 AccessToken 발급 방식 궁금한점

0

148

1

강의자료.zip 를 다운로드 받았는데 압축이 풀리지 않습니다. 확인 부탁드려요

0

136

2

OIDC SSO 관련 질문 입니다.

0

129

1

AuthenticationEntryPoint 강의 누락 문의

0

120

1

cors설정방법

0

115

1

jwt decoder 토큰 검증 시 질문

0

218

1

클라이언트에서 userinfo 엔드포인트 호출 시 질문

0

183

2

JOSE 구성요소의 api에 관한 질문

0

138

2

스프링 부트 3버전으로 따라가시는 분들 참고하세요

1

524

1

CustomOAuth2AuthenticationFilter 구현 중 질문

0

144

2

AuthenticationManager 생성시점

0

116

1

FormLogin과 Oauth2Client 둘 중 사용하는 시점

0

125

1

postman userinfo 엔드포인트 질문

0

130

2

강의 수강신청하고 듣기 전입니다 질문있습니다.

0

113

1

인증 코드를 통해 발급 받은 토큰의 관리

0

198

1