inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

스프링 시큐리티 OAuth2

연동구현 (2)

OAuth 2.0 Client + Resource Server + Authorization Server 연동

731

dohyun_lim

작성한 질문수 67

0

18:50 분쯤에 localhost:8081 과 127.0.0.1:8081요청은 session이 다르게 형성되어서 문제가 생긴다. 말씀하셔서 코드를 보니

OAuth2LoginAuthenticationFilter#attempAuthentication 메소드에서 authorizationRequestRepository#removeAuthorizationRequest 를 호출해서 세션에 있는 OAuth2AuthorizationRequest를 꺼내고 지우던데

 

OAuth 2.0 Client() 강의에서 저장하는 이유가 state 비교 및 상태유지 라하셨는데

왜 굳이 세션에 저장된것을 지우는 과정이 필요한것인가요?

이미 해당 request(auth code를 요청하는) 에 대한 검증이 끝났기에 용량을 차지해서 지우는 것인가요...?

java spring-boot spring oauth

답변 1

1

정수원

OAuth2AuthorizationRequest 는 권한부여 요청할 때 마다 생성되는 객체입니다

그래서 1단계 임시코드를 요청할 때 OAuth2AuthorizationRequest를 사용하고 2단계 access token 을 요청한 이후에는 재사용할 만한 상황이 발생하지 않기 때문에 세션에서 지우고 있습니다

그래서 만약 토큰 만료가 되어 권한부여 요청을 다시 하는 경우 이전의 OAuth2AuthorizationRequest 가 세션에 존재한다면 해당 OAuth2AuthorizationRequest를 세션에서 가져다 사용할 수 있기 때문에 문제가 되는 것입니다

임시코드가 1회성인것처럼 OAuth2AuthorizationRequest 도 마찬가지라 보시면 됩니다

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