티스토리 뷰

SW 개발/Spring

Spring Boot OAuth 고려할 점 정리

지단로보트 2017. 7. 14. 08:56

초기화

  • Spring Boot OAuth의 초기화는 AuthorizationServerEndpointConfiguration, AuthorizationServerSecurityConfiguration 클래스가 담당한다.

클라이언트

  • 클라이언트 오브젝트는 ClientDetails 인터페이스를 구현해야 한다. 기본 구현체로 BaseClientDetails 클래스가 제공된다.

  • client_secret 값은 절대 클라이언트 외부에 노출되면 안되는 데이터이기 때문에 해시 값으로 변환되어 저장소에 저장되어야 한다. PasswordEncoder 인터페이스의 encode() 메써드를 사용한다.

// 텍스트 그대로를 반환한다. 테스트 환경에서만 사용해야 하며 절대 운영 환경에서는 사용하면 안된다.
NoOpPasswordEncoder.getInstance().encode(client_secret);

// BCrypt 방식의 해시로 변환하여 반환한다. 운영 환경에 가장 적합하다.
BCryptPasswordEncoder.getInstance().encode(client_secret);

토큰

  • access_token 오브젝트는 OAuth2AccessToken 인터페이스를 구현해야 한다. 기본 구현된 클래스는 DefaultOAuth2AccessToken이다.
  • 토큰 저장소는 TokenStore 인터페이스를 구현하게 되어 있다.
댓글
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
글 보관함