Framework/Spring Boot

OAuth2User

잔망루피 2022. 10. 6. 21:39

public interface OAuth2User extends OAuth2AuthenticatedPrincipal

OAuth 2.0 provider에 등록된 user principal을 표시

OAuth 2.0 사용자는 하나 이상의 속성들로(예를 들어, first name, middle name, last name, 이메일, 연락처, 주소 등) 구성된다.

각 사용자 속성은 name, value를 가지고 있고 OAuth2AuthenticatedPrincipal.getAttributes()의 name에 의해 키 입력된다.

속성 이름은 providers 간에 표준화되지 않으므로 다르다.

이 인터페이스의 구현 인스턴스는 인증 객체와 연결되어 Authentication.getPrincipal()을 통해 액세스할 수 있는 OAuth2AuthenticatedPrincipal을 나타낸다.

java.lang.String getName() 인증된 Principal 이름을 반환
default <A> A getAttribute(java.lang.String name) 이름을 통해 OAuth 2.0 토큰 속성을 얻는다.
java.util.Map<java.lang.String.java.lang.Object> getAttributes() OAuth 2.0 토큰 속성을 가져온다.
java.util.Collection<? extends GrantedAuthority> getAuthorities() OAtuth 2.0 토큰과 관련된 GrantedAuthority 컬렉션을 가져온다.

getName()은 인터페이스 AuthenticatedPrincipal에서 상속받은 메소드다.

getAttribute(java.lang.String name), getAttributes(), getAuthorities()은 인터페이스 OAuth2AuthenticatedPrincipal에서 상속받은 메소드다.

 

 

참고 👇

https://docs.spring.io/spring-security/site/docs/current/api/org/springframework/security/oauth2/core/user/OAuth2User.html

 

OAuth2User (spring-security-docs 5.7.3 API)

A representation of a user Principal that is registered with an OAuth 2.0 Provider. An OAuth 2.0 user is composed of one or more attributes, for example, first name, middle name, last name, email, phone number, address, etc. Each user attribute has a "name

docs.spring.io

 

반응형

'Framework > Spring Boot' 카테고리의 다른 글

트랜잭션  (0) 2022.10.26
Spring Security  (0) 2022.10.06
[Error] ModelMapper 매핑이 안될 때  (0) 2022.10.05
ModelMapper Matching Strategy 정리  (0) 2022.10.05
[Spring Security] rememberMe 설정  (0) 2022.09.19