안녕하세요! 오늘은 Microsoft OAuth 연동하는 방법을 알려 드리려고 합니다.
저는 스프링부트, 스프링에 MS 를 연동하였고 코드는 아래의 페이지에 설명해두었습니다.
위 방법을 진행하시기 전에, 해당 포스트 방법부터 진행해주시면 되겠습니다.
먼저, 코드를 작성하기 전에 `client_id`, `tenent_id`, `secret_key` 이렇게 3개가 필요합니다.
`클라이언트 아이디`와 `테넌트 아이디`는 서비스를 등록해둔 Azure 홈페이지에서, 개요에 들어가신 뒤, 기본정보에 애플리케이션(클라이언트) ID, 디렉터리(테넌트) ID 에서 확인하실 수 있습니다.
그리고 `시크릿 키`는 인증서 및 암호에서 새 클라이언트 암호를 만드신 다음 복사해두시면 됩니다.
해당 암호는 생성할 때, 한번만 보여지기 때문에 복사를 잘 해두셔야합니다.
그리고 만료 시간을 최소 3개월 ~ 최대 2년까지 설정할 수 있는데, 해당 기간이 만료되면 새 클라이언트 암호를 지정하여 갱신해줘야합니다.
이제 기초 작업은 다 끝났습니다.
아래의 설정은 코드를 작성하면서 설정해주시면 됩니다.
MS로 `로그인`을 할 때, 로그인을 완료하면 리다이렉션 URL 을 코드에서 지정해주셔야합니다.
코드에 리다이렉션 URL 을 지정하면 아래의 인증 -> 웹 리디렉션 URI 에서 동일한 URI를 써주셔야합니다.
그리고 `Single-SignOut` 을 구현하려면 프런트 채널 로그아웃 URL 에 타 MS 제품군이 로그아웃 되었을 때, 실행될 URL 을 기재해주시고, 이 URL 에 로그아웃 프로세스를 구현해주시면되겠습니다.
만약, 개발하다가 토큰에 특정 정보를 받을 일이 있으면 토큰 구성 -> 선택적 클레임에서 정보 추가를 해주시면 되겠습니다.
참고자료
MS 그래프 API 테스트 주소 : https://developer.microsoft.com/en-us/graph/graph-explorer
MS 공식 문서 : https://learn.microsoft.com/ko-kr/entra/identity-platform/v2-oauth2-auth-code-flow
'WEB' 카테고리의 다른 글
[Spring] 스프링 MVC에 Microsoft OAuth 연동하기 (2) | 2025.01.22 |
---|---|
[Spring Boot] 스프링 시큐리티에 Microsoft OAuth 연동하기 (1) | 2025.01.15 |
[코드 리팩토링] Compose 메소드 패턴 (0) | 2024.11.20 |
[Spring boot] Spring Security에 구글 로그인 연동하기 (2) | 2024.11.13 |
[Spring Security] Session 기반 인증 방식 VS Token 기반 인증 방식 (1) | 2024.11.08 |