Microsoft Entra 애플리케이션 프록시의 복잡한 애플리케이션 이해

개요

애플리케이션은 종종 여러 개별 웹 애플리케이션으로 구성됩니다. 이러한 상황은 URL에서 서로 다른 도메인 접미사 또는 다른 포트 또는 경로를 사용합니다. 개별 웹 애플리케이션 인스턴스는 별도의 Microsoft Entra 애플리케이션 프록시 앱에 게시되어야 합니다. 이러한 상황에서는 다음과 같은 문제가 발생할 수 있습니다.

  • 사전 인증: 클라이언트는 각 Microsoft Entra 애플리케이션 프록시 앱에 대한 액세스 토큰 또는 쿠키를 별도로 획득해야 합니다. 여러 차례의 인수는 로그인 시 microsoftonline.com에서 더 많은 리디렉션을 초래합니다.
  • CORS 호출은 호출자 웹앱과 대상 웹앱 간의 URL에 대한 액세스의 유효성을 검사하는 데 사용됩니다. Microsoft Entra 애플리케이션 프록시 클라우드 서비스는 이러한 호출을 차단합니다. 요청에 인증 정보를 포함할 수 없기 때문에 차단이 발생합니다.
  • 불량 앱 관리: 앱 관리 환경에 마찰을 더하는 프라이빗 앱에 액세스할 수 있도록 여러 엔터프라이즈 앱이 만들어집니다.

다음 그림에서는 복잡한 애플리케이션 도메인 구조에 대한 예제를 보여줍니다.

기본 애플리케이션과 보조 애플리케이션 간의 리소스 공유를 보여 주는 복잡한 애플리케이션의 도메인 구조 다이어그램입니다.

Microsoft Entra 애플리케이션 프록시를 사용하면 다양한 도메인에서 여러 URL로 구성된 복잡한 애플리케이션 게시를 사용하여 이러한 문제를 해결할 수 있습니다.

여러 애플리케이션 세그먼트가 정의된 복합 애플리케이션의 다이어그램입니다.

복잡한 앱에는 여러 앱 세그먼트가 있습니다. 각 앱 세그먼트에는 내부 및 외부 URL이 있습니다. 하나의 조건부 액세스 정책이 앱과 연결됩니다. 외부 URL에 대한 액세스는 동일한 정책 집합을 사용하여 사전 인증과 함께 작동합니다. 이러한 정책은 모든 앱 세그먼트에 적용됩니다.

복잡한 앱은 다음과 같은 몇 가지 이점을 제공합니다.

  • 사용자 인증
  • CORS 문제 완화
  • 내부 URL의 다른 도메인 접미사 또는 다른 포트 또는 경로에 대한 액세스

이 문서에서는 사용자 환경에서 와일드카드 애플리케이션 게시를 구성하는 방법을 보여 줍니다.

복잡한 애플리케이션에 대한 애플리케이션 세그먼트의 특징

복잡한 애플리케이션의 애플리케이션 세그먼트에는 다음과 같은 특징이 있습니다.

  • 애플리케이션 세그먼트는 와일드카드 애플리케이션에서만 구성됩니다.
  • 외부 및 대체 URL은 각각 애플리케이션의 와일드카드 외부 및 대체 URL 도메인과 일치해야 합니다.
  • 애플리케이션 세그먼트 URL(내부 및 외부)은 복잡한 애플리케이션에서 고유성을 유지해야 합니다.
  • CORS 규칙(선택 사항)은 애플리케이션 세그먼트별로 구성할 수 있습니다.
  • 액세스 권한은 복잡한 애플리케이션에 대해 정의된 애플리케이션 세그먼트에만 부여됩니다.

    메모

    모든 애플리케이션 세그먼트를 삭제하면 복잡한 애플리케이션이 와일드카드 애플리케이션처럼 작동하여 지정된 도메인의 유효한 URL에 액세스할 수 있습니다.

  • 내부 URL을 애플리케이션 세그먼트와 일반 애플리케이션으로 정의할 수 있습니다.

    메모

    일반 애플리케이션은 항상 복잡한 앱(와일드카드 애플리케이션)보다 우선합니다.

필수 구성 요소

다음 사전 요구 사항을 완료합니다.

  • 애플리케이션 프록시를 사용하도록 설정하고 애플리케이션에 대한 시야가 있는 커넥터를 설치합니다. 온-프레미스 환경을 준비하고 커넥터를 설치 및 등록하고 커넥터를 테스트하는 방법을 알아보려면 애플리케이션 프록시 통해 원격 액세스를 위한 온-프레미스 애플리케이션 추가 자습서를 참조하세요.

복잡한 애플리케이션에 대한 애플리케이션 세그먼트 구성

메모

복잡한 분산 애플리케이션당 두 개의 애플리케이션 세그먼트가 Microsoft Entra ID P1 또는 P2 구독에 대해 지원됩니다.

애플리케이션 세그먼트를 사용하여 애플리케이션 프록시를 통해 복잡한 분산 앱을 게시하려면 다음을 수행합니다.

  1. 와일드카드 애플리케이션을 만듭니다.

  2. 애플리케이션 프록시 기본 설정 페이지에서 애플리케이션 세그먼트 추가를 선택합니다.

    애플리케이션 세그먼트를 추가하는 링크의 스크린샷

  3. 애플리케이션 세그먼트 관리 및 구성 페이지에서 + 앱 세그먼트 추가선택합니다.

    애플리케이션 세그먼트 관리 및 구성 페이지의 스크린샷

  4. 내부 URL입력하세요.

  5. 외부 URL 드롭다운 목록에서 사용자 지정 도메인을 선택합니다.

  6. CORS 규칙 추가(선택 사항). 자세한 내용은 CORS 규칙 구성을 참조하세요.

  7. 선택 후만들기.

    애플리케이션 세그먼트 컨텍스트 창 추가 또는 편집 스크린샷

  8. 애플리케이션에 사용자를 할당합니다.

애플리케이션 세그먼트를 편집/업데이트하려면 애플리케이션 세그먼트 관리 및 구성 페이지의 목록에서 애플리케이션 세그먼트를 선택합니다. 필요한 경우 애플리케이션 세그먼트의 사용자 지정 도메인에 대한 인증서를 업로드하고 DNS(도메인 이름 시스템) 레코드를 업데이트합니다.

SSO(Single Sign-On) 구성

메모

IWA(Windows 통합 인증)를 사용한 Single Sign-On은 와일드카드 SPN(서비스 사용자 이름)을 지원하지 않습니다. 예를 들어 http/*.contoso.com 같은 와일드카드는 모든 세그먼트에 http/app.contoso.com 같은 구성된 단일 SPN을 사용합니다.

DNS 레코드 업데이트

중요합니다

애플리케이션 세그먼트를 편집할 때 포털 UI에 표시된 CNAME 지침은 이 섹션의 지침과 다를 수 있습니다. 복잡한(와일드카드) 애플리케이션의 경우, 포털에 나타난 일반적인 tenant.runtime.msappproxy.net 엔드포인트가 아니라, 여기에서 설명한 CNAME 구성으로 .msappproxy.net를 항상 사용하십시오.

사용자 지정 도메인을 사용하는 경우 외부 URL에 대한 CNAME 레코드를 사용하여 DNS 항목을 만듭니다. 예를 들어 *.adventure-works.com 애플리케이션 프록시 엔드포인트의 외부 URL을 가리킵니다. 와일드카드 애플리케이션의 경우 CNAME 레코드를 테넌트 런타임 엔드포인트 <yourAADTenantId>.tenant.runtime.msappproxy.net로 가리킵니다.

또는 모든 개별 애플리케이션 세그먼트에 대한 CNAME 레코드가 있는 전용 DNS 항목을 다음과 같이 만들 수 있습니다.

External URL of the application segment > <yourAADTenantId>.tenant.runtime.msappproxy.net

또한 동일한 DNS 영역에서 애플리케이션 ID에 대한 CNAME 레코드를 추가해야 합니다.

<yourAppId> > <yourAADTenantId>.tenant.runtime.msappproxy.net

복합 앱에 할당된 커넥터 그룹이 기본 커넥터 그룹의 지역에 없는 경우 DNS 항목에서 다음 도메인 접미사 중 하나를 사용해야 합니다.

커넥터 할당 지역 외부 URL
아시아 <yourAADTenantId>.asia.tenant.runtime.msappproxy.net
오스트레일리아 <yourAADTenantId>.aus.tenant.runtime.msappproxy.net
유럽 <yourAADTenantId>.eur.tenant.runtime.msappproxy.net
북아메리카 <yourAADTenantId>.nam.tenant.runtime.msappproxy.net

애플리케이션 프록시에 대한 자세한 지침은 자습서: Microsoft Entra ID애플리케이션 프록시를 통해 원격 액세스를 위한 온-프레미스 애플리케이션 추가를 참조하세요.

다음 단계