src/main/resources/ 디렉토리에 application-oauth.properties 파일을 생성한다.
해당 파일에 클라이언트 ID(clientId)와 클라이언트 보안 비밀(clientSecret) 코드를 다음과 같이 등록한다.
spring.security.oauth2.client.registration.google.client-id=발급 받은 클라이언트 ID
spring.security.oauth2.client.registration.google.client-secret=발급 받은 클라이언트 보안 비밀
spring.security.oauth2.client.registration.google.scope=profile,email
scope=profile,email
- scope의 기본 값은 openid, profile, email이다.
- 강제로
profile,email
를 등록한 이유는 openid라는 scoper가 있으면 Open Id Provider로 인식하기 때문이다. - 이렇게 되면 OpenId Provider인 서비스(구글)와 그렇지 않은 서비스(네이버/카카오 등)로 나눠서 각각 OAuth2Service를 만들어야 한다.
- 하나의 OAuth2Service로 사용하기 위해 일부러 openid scope를 빼고 등록한다.
application.properties에서 application-oauth.properties를 포함하도록 구성한다.
스프링 부트에서는 properties의 이름을 application-XXX.properties로 만들면 xxx라는 이름의 profile이 생성되어 이를 통해 관리할 수 있다.
즉, profile=xxx라는 식으로 호출하면 해당 properties의 설정들을 가져올
수 있다.
호출하는 방식은 여러 방식이 있지만 여기서는 스프링 부트의 기본 설정 파일인 application.properties에서 application-oauth.properties를 포함하도록 구성한다.
application.properties에 다음과 같이 코드를 추가한다.
spring.profiles.include=oauth
참고
'Spring' 카테고리의 다른 글
[SpringSecurity] 구글 로그인 연동하기 4 - User 엔티티 관련 코드 작성 (0) | 2021.06.10 |
---|---|
[SpringSecurity] 구글 로그인 연동하기 3 - .gitignore 등록 (0) | 2021.06.10 |
[SpringSecurity] 구글 로그인 연동하기 1 - 구글 서비스 등록 (1) | 2021.06.10 |
Error 페이지 처리하기 (0) | 2021.05.26 |
ExceptionHandler 사용하기 (0) | 2021.05.13 |
댓글