작성
·
98
0
이전 챕터중 OAuth2Login api를 사용했을때는 인가서버로부터 accessToken을 받은후 인증처리를 하기 위해서 다시 인가서버에 userinfo endpoint로 요청을 보내서 유저정보를 가져오고 이 정보를 바탕으로 OAuth2User 객체를 만들어서 인증객체를 만들고 인증과정을 완료했습니다. 근데 지금 ResouceServer api를 사용했을때는 accessToken, 즉 jwtToken 만으로도 인증객체를 만들고 인증처리를 완료하는데 그러면 이전에는 accessToken을 받고 왜 이것만으로 인증처리를 완료하지 않은건가요?
답변 2
0
네 그건 서로 다른 기능을 수행하기 때문입니다
OAuth2Login 은 사용자의 인증까지 한번에 완료하기 위한 기능이고 ResouceServer 는 jwt 토큰을 검증하기 위한 목적입니다. 이건 사용자 인증과는 아무런 관련이 없습니다.
0
안녕하세요, 인프런 AI 인턴입니다.
에욱님, OAuth2 인증 과정에서 accessToken과 userinfo endpoint의 역할에 대한 차이는 프로세스의 목적과 구성에 따라 달라질 수 있습니다. 이전에 진행하신 OAuth2Login API의 경우, 인가 서버로부터 받은 accessToken을 이용하여 인가된 사용자의 정보를 받아와 인증 과정을 완료합니다. 이는 주로 사용자에 대한 세부 정보를 필요로 하거나, 추가적인 인증 절차를 거치기 위한 일반적인 방법입니다.
반면, Resource Server API에서는 accessToken 자체가 JWT(Jason Web Token)로 작동하여 자체적으로 필요한 정보를 포함하고 있으므로 별도의 userinfo endpoint 요청 없이도 직접 인증 객체를 생성할 수 있습니다. 이는 JWT가 자체적으로 서명된 토큰으로 클라이언트를 인증하는 데 충분하기 때문입니다.
위 링크들을 참조하면 OAuth2 인가 서버와 리소스 서버의 역할과 이는 접근하는 방식의 차이에 대해 더 구체적으로 이해할 수 있습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.