728x90
- OAuth = Open + Authorization
- The OAuth 2.0 Authorization Framework (RFC 6749 : https://ko.wikipedia.org/wiki/RFC)
- https://datatracker.ietf.org/doc/rfc6749/
RFC 6749: The OAuth 2.0 Authorization Framework
The OAuth 2.0 authorization framework enables a third-party application to obtain limited access to an HTTP service, either on behalf of a resource owner by orchestrating an approval interaction between the resource owner and the HTTP service, or by allowi
datatracker.ietf.org
- OAuth 2.0 인가 프레임워크는 애플리케이션이 사용자를 대신해, 사용자의 자원에 대한 제한된 액세스를 얻기 위해 승인 상호 작용을 함으로써 애플리케이션이 자체적으로 액세스 권한을 얻도록 한다.
- 즉, 사용자가 속한 사이트의 보호된 자원에 대해 애플리케이션의 접근을 허용하도록 승인하는 것을 의미한다.
- https://datatracker.ietf.org/doc/rfc6749/
- Delegated authorization framework : 위임 인가 프레임워크, 인가 서버
- 어플리케이션이 사용자의 데이터에 접근하도록 권한을 부여한다

- web App에서는 사용자 정보를 알 수 없기에 위임 인가 서버(페이스 북)에 인증/인가 요청을 하여, 인증이 성공하면 성공적으로 사용자 정보를 가지고 와, 이를 활용하여, Web App의 기능을 작성할 수 있다.
OAuth2 이전 방식

- 애플리케이션이 사용자 정보를 알기 위해서는 사용자가 Web Application에서 인증 서버, 프레임워크에 로그인 정보를 입력해 네트워크를 통해 로그인 정보를 얻었다.
- 단점
- 아이디와 패스워드가 노출되어 보안에 취약(네트워크를 타기 때문)
- 페이스북의 모든 서비스를 제한없이 사용 가능(필요한 정보 외 다른 정보도 읽어 올 수 있기 때문)
- 클라이언트 애플리케이션을 신뢰할 수 있는가??
OAuth2 방식

- 사용자는 Web App에 페이스북을 사용자 사진 정보를 요청하고, 애플리케이션은 페이스북에 로그인 과정을 인가하고, 사용자가 인증을 완료하면 사진 접근만 가능한 AccessToken을 발급받는다.
- 해당 AccessToken으로 페이스북으로부터 앞으로 사용자 사진을 가져올 수 있다.
- 장점
- 아이디와 패스워드로 로그인할 필요가 X
- 페이스북의 서비스를 범위에 따라 제한할 수 있다.
- 클라이언트 애플리케이션의 신뢰여부를 판단할 필요가 X
728x90
'스프링 시큐리티 OAuth2 > OAuth 2.0 용어 이해' 카테고리의 다른 글
| Oauth 2.0 Token Types 이해 (0) | 2023.01.06 |
|---|---|
| OAuth 2.0 Client Types 이해 (0) | 2023.01.04 |
| OAuth 2.0 Roles 이해 (0) | 2023.01.04 |
| keycloak 설치 및 설정 (0) | 2023.01.02 |