강의

멘토링

로드맵

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

김관욱님의 프로필 이미지
김관욱

작성한 질문수

스프링 시큐리티 OAuth2

OpenID Connect 1.0 Endpoint - 사용자 정보 엔드포인트

openid scope가 헷갈려요 ㅠㅠ

해결된 질문

작성

·

793

0

안녕하세요 강사님.

openid scope가 계속 헷갈려서서요...

  1. scope: openid 

    • 클라이언트에서 id token 검증하여 사용자 인증함

  2. scope: openid profile email address phone

    • 클라이언트에서 access  token을 인가 서버에 전송하여 인가 서버에서 토큰을 검증하여 사용자 인증함

  3. scope: openeid  미포함

    • 클라이언트에서 access  token을 리소스 서버에 전송하여 리소스 서버에서 토큰을 검증하여 사용자 인증함

openid scope는 리소스 서버를 거치지 않고 사용자 인증을위해 사용한다고 생각되는데, 제가 제대로 이해한게 맞는지 궁금합니다!

퀴즈

OAuth 2.0 권한 서버의 권한 엔드포인트(Authorization Endpoint)의 주된 역할은 무엇일까요?

액세스 토큰 발급

클라이언트 등록 관리

사용자 인증 및 동의 처리

토큰 유효성 검증 요청 처리

답변 1

1

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

openid 자체가 이미 전자 서명된 토큰이고 이 토큰에 사용자의 식별자가 포함되어 있기 때문에 인증도구로 사용할 수 있다는 의미입니다. 그래서 사용자 정보를 가지고 오기 위해 리소스 서버를 거칠 필요가 없습니다.

access token 은 사용자의 식별정보를 담는 역할이 아니고 사용자의 여러 정보를 가져올 수 있는 권한을 가진 토큰이기 때문에 사용자의 데이터가 존재하는 리소스 서버로부터 데이터를 가지고 와서 인증을 하도록 돕는 역할을 한다고 보시면 됩니다.

scope: openid 와 scope: openid profile email address phone 의 차이점은

openid 만 있을 경우에는 사용자의 식별자정보만 참조할 수 있지만 그 외에 사용자의 다른 정보를 참조하고자 할 때 profile email address phone 를 추가해서 가져오게 됩니다.

 

요약하면 openid 는 인증만을 위한 토큰을 사용하고자 할 때 사용하는 것이며 access token 은 사용자가 속한 시스템의 여러 정보를 통해 인증이나 기타 처리를 하고자 할 때 사용한다고 보시면 됩니다

김관욱님의 프로필 이미지
김관욱

작성한 질문수

질문하기