Spring Cloud Gateway용 Microsoft Entra ID 및 API 포털을 사용하여 Single Sign-On 설정
참고 항목
기본, 표준 및 엔터프라이즈 계획은 2025년 3월 중순부터 사용되지 않으며 3년의 은퇴 기간이 있습니다. Azure Container Apps로 전환하는 것이 좋습니다. 자세한 내용은 Azure Spring Apps 사용 중지 공지 사항을 참조하세요.
표준 소비 및 전용 계획은 2024년 9월 30일부터 사용되지 않으며 6개월 후에 완전히 종료됩니다. Azure Container Apps로 전환하는 것이 좋습니다. 자세한 내용은 Azure Spring Apps 표준 사용량 및 전용 계획을 Azure Container Apps로 마이그레이션을 참조 하세요.
이 문서는 기본/표준 ✅ 엔터프라이즈에 ❎ 적용됩니다.
이 문서에서는 Microsoft Entra ID를 OpenID 식별 공급자로 사용하여 Spring Cloud Gateway 또는 API 포털에 대한 SSO(Single Sign-On)를 구성하는 방법을 보여 줍니다.
필수 조건
- Spring Cloud Gateway 또는 API 포털이 사용하도록 설정된 엔터프라이즈 계획 인스턴스입니다. 자세한 내용은 빠른 시작: 엔터프라이즈 플랜을 사용하여 Azure Spring Apps에 앱 빌드 및 배포를 참조하세요.
- Microsoft Entra 애플리케이션을 관리할 수 있는 충분한 권한입니다.
Spring Cloud Gateway 또는 API 포털에 SSO를 사용하도록 설정하려면 다음 네 가지 속성을 구성해야 합니다.
SSO 속성 | Microsoft Entra 구성 |
---|---|
clientId | 앱 등록 참조 |
clientSecret | 클라이언트 암호 만들기 참조 |
scope | 범위 구성 참조 |
issuerUri | 발급자 URI 생성 참조 |
다음 단계에서 Microsoft Entra ID의 속성을 구성합니다.
Spring Cloud Gateway 또는 API 포털에 대한 엔드포인트 할당
먼저 다음 단계에 따라 Spring Cloud Gateway 및 API 포털에 할당된 공용 엔드포인트를 가져와야 합니다.
- Azure Portal에서 엔터프라이즈 계획 서비스 인스턴스를 엽니다.
- 왼쪽 메뉴의 VMware Tanzu 구성 요소에서 Spring Cloud Gateway 또는 API 포털을 선택합니다.
- 엔드포인트 할당 옆에 있는 예를 선택합니다.
- 이 문서의 다음 섹션에서 사용할 URL을 복사합니다.
Microsoft Entra 애플리케이션 등록 만들기
다음 단계를 사용하여 애플리케이션을 등록하여 앱과 Microsoft ID 플랫폼 간에 신뢰 관계를 설정합니다.
- 홈 화면의 왼쪽 메뉴에서 Microsoft Entra ID를 선택합니다.
- 관리 아래에서 앱 등록을 선택한 다음, 새 등록을 선택합니다.
- 이름 아래에 애플리케이션의 표시 이름을 입력한 다음, 지원되는 계정 유형에서 등록할 계정 유형을 선택합니다.
- 리디렉션 URI(선택 사항)에서 웹을 선택한 다음, 텍스트 상자에 위 섹션의 URL을 입력합니다. 리디렉션 URI는 Microsoft Entra ID에서 사용자의 클라이언트를 리디렉션하고 인증 후에 보안 토큰을 보내는 위치입니다.
- 등록을 선택하여 애플리케이션 등록을 완료합니다.
등록이 완료되면 앱 등록* 페이지의 개요 화면에 애플리케이션(클라이언트) ID가 표시됩니다.
앱 등록 후 리디렉션 URI 추가
다음 단계에 따라 앱 등록 후 리디렉션 URI를 추가할 수도 있습니다.
- 애플리케이션 개요의 왼쪽 메뉴에 있는 관리에서 인증을 선택합니다.
- 웹을 선택한 다음, 리디렉션 URI에서 URI 추가를 선택합니다.
- 새 리디렉션 URI를 추가한 다음, 저장을 선택합니다.
애플리케이션 등록에 대한 자세한 내용은 빠른 시작: Microsoft ID 플랫폼을 사용하여 애플리케이션 등록을 참조하세요.
클라이언트 암호 추가
애플리케이션은 클라이언트 암호를 사용하여 SSO 워크플로에서 자신을 인증합니다. 다음 단계를 사용하여 클라이언트 암호를 추가할 수 있습니다.
- 애플리케이션 개요의 왼쪽 메뉴에 있는 관리에서 인증 및 비밀을 선택합니다.
- 클라이언트 암호를 선택한 다음, 새 클라이언트 암호를 선택합니다.
- 클라이언트 암호에 대한 설명을 입력한 다음, 만료 날짜를 설정합니다.
- 추가를 선택합니다.
Warning
클라이언트 암호를 안전한 장소에 저장해야 합니다. 이 페이지를 나간 후에는 검색할 수 없습니다. 애플리케이션으로 로그인할 때 클라이언트 ID와 함께 클라이언트 암호를 입력해야 합니다.
범위 구성
SSO의 scope
속성은 JWT ID 토큰에 포함할 범위 목록입니다. 권한이라고 하는 경우도 있습니다. ID 플랫폼은 openid
, email
및 profile
과 같은 여러 OpenID Connect 범위를 지원합니다. 자세한 내용은 Microsoft ID 플랫폼의 범위와 권한의 OpenID Connect 범위 섹션을 참조하세요.
발급자 URI 구성
발급자 URI는 발급자 식별자로 어설션되는 URI입니다. 예를 들어 제공된 issuer-uri가 https://example.com
이면 OpenID 공급자 구성 요청이 https://example.com/.well-known/openid-configuration
으로 만들어집니다.
Microsoft Entra ID의 발급자 URI는 <authentication-endpoint>/<Your-TenantID>/v2.0
과 같습니다. <authentication-endpoint>
를 클라우드 환경의 인증 엔드포인트(예: 글로벌 Azure의 https://login.microsoftonline.com
)로 바꾸고 <Your-TenantID>
를 애플리케이션이 등록된 디렉터리(테넌트) ID로 바꿉니다.
SSL 구성
Microsoft Entra 애플리케이션을 구성한 후 다음 단계에 따라 Spring Cloud Gateway 또는 API 포털의 SSO 속성을 설정할 수 있습니다.
- 왼쪽 메뉴의 VMware Tanzu 구성 요소에서 Spring Cloud Gateway 또는 API 포털을 선택한 다음, 구성을 선택합니다.
- 적절한 필드에
Scope
,Client Id
,Client Secret
및Issuer URI
를 입력합니다. 쉼표를 사용하여 여러 값을 구분합니다. - 저장을 선택하여 SSO 구성을 사용하도록 설정합니다.
참고 항목
SSO 속성을 구성한 후에는 ssoEnabled=true
를 설정하여 Spring Cloud Gateway 경로에 대해 SSO를 사용하도록 설정해야 합니다. 자세한 내용은 경로 구성을 참조하세요.