개발이야기/AspNet&C#

IdentityServer 학습 #5 - Scope 개념

Roslyn 2024. 3. 7. 14:16
반응형

기본적으로 인증을 처리하는 것은 oAuth나 OpenID Connect나 동일한 개념으로 정리될 수 있습니다.

하지만, Scope는 두 개념에서 각각 다르게 사용됩니다.

Scope라는 동일한 필드(Attribute)를 oAuth와 OpenID Connect가 다르게 사용하는 것인데, 사용자에 대한 사용자 인증만을 처리하는 OpenID Connect는 해당 Scope를 사용자 인증 정보를 담아두는 필드로 활용합니다.

물론 그것은 강제된 사항이 아니지만 보편적으로 그렇습니다.

때문에 Scope에는 사용자의 이메일 등 인증된 정보가 담겨지게 됩니다.

반면 oAuth는 인증 이후에 리소스에 접근 가능한 권한 여부를 체크하기 때문에 Scope를 본래의 용도인 권한 체크 용도로 사용하게 됩니다.

 

즉 oAuth에서 권한 체크용으로 사용하기 위해 Scope라는 필드가 만들어졌는데, OpenID Connect에서는 인증만 처리하기 때문에, 권한을 나타내는 Scope 필드가 필요가 없기에, 해당 필드에 인증된 정보를 담아 사용하는 용도로 활용되는 것입니다.

 

물론 보다 깊이 들어가 살피면 그보다 훨씬 복잡한 개념과 히스토리가 있겠으나, 일면 단순하게 이해하는 데에는 위와 같은 정리만으로 충분하다 생각됩니다.

 

 

반응형

'개발이야기 > AspNet&C#' 카테고리의 다른 글

IdentityServer 학습 #7 - API access  (0) 2024.03.07
IdentityServer 학습 #6 - OpenID Connect  (0) 2024.03.07
IdentityServer 학습 #4 - Scope  (0) 2024.03.07
IdentityServer 학습 #3  (0) 2024.03.07
IdentityServer 학습 #2  (0) 2024.03.07