AD FS 사전 인증을 사용하는 애플리케이션 게시

적용 대상: Windows Server 2022, Windows Server 2019, Windows Server 2016

이 콘텐츠는 웹 애플리케이션 프록시의 온-프레미스 버전에 적합합니다. 클라우드를 통해 온-프레미스 애플리케이션에 안전하게 액세스할 수 있도록 하려면 Microsoft Entra 애플리케이션 프록시 콘텐츠를 참조 하세요.

이 항목에서는 AD FS(Active Directory Federation Services) 사전 인증을 사용하여 웹 애플리케이션 프록시 통해 애플리케이션을 게시하는 방법을 설명합니다.

AD FS 사전 인증을 사용하여 게시할 수 있는 모든 유형의 애플리케이션에 대해 페더레이션 서비스에 AD FS 신뢰 당사자 트러스트를 추가해야 합니다.

일반 AD FS 사전 인증 흐름은 다음과 같습니다.

참고 항목

이 인증 흐름은 Microsoft Store 앱을 사용하는 클라이언트에는 적용되지 않습니다.

  1. 클라이언트 디바이스는 특정 리소스 URL에 게시된 웹 애플리케이션에 액세스하려고 합니다. 예를 들면 다음과 같습니다 https://app1.contoso.com/.

    리소스 URL은 웹 애플리케이션 프록시 들어오는 HTTPS 요청을 수신 대기하는 공용 주소입니다.

    HTTP에서 HTTPS로 리디렉션을 사용하도록 설정하면 웹 애플리케이션 프록시 들어오는 HTTP 요청도 수신 대기합니다.

  2. 웹 애플리케이션 프록시 리소스 URL 및 appRealm(신뢰 당사자 식별자)을 포함하여 URL로 인코딩된 매개 변수를 사용하여 HTTPS 요청을 AD FS 서버로 리디렉션합니다.

    사용자는 AD FS 서버에 필요한 인증 방법을 사용하여 인증합니다. 예를 들어 사용자 이름 및 암호, 일회성 암호를 사용하는 2단계 인증 등이 있습니다.

  3. 사용자가 인증되면 AD FS 서버는 다음 정보를 포함하는 보안 토큰인 '에지 토큰'을 발급하고 HTTPS 요청을 웹 애플리케이션 프록시 서버로 다시 리디렉션합니다.

    • 사용자가 액세스하려고 한 리소스 식별자

    • UPN(사용자 계정 이름)으로 사용자의 ID입니다.

    • 액세스 권한 부여 승인 만료(즉, 사용자에게는 제한된 기간 동안 액세스 권한이 부여되며, 이 기간이 경과한 후에는 다시 인증해야 함)

    • 에지 토큰의 정보 서명

  4. 웹 애플리케이션 프록시 에지 토큰을 사용하여 AD FS 서버에서 리디렉션된 HTTPS 요청을 수신하고 다음과 같이 토큰의 유효성을 검사하고 사용합니다.

    • 웹 애플리케이션 프록시 구성에 구성된 페더레이션 서비스에서 에지 토큰 서명이 있는지 확인합니다.

    • 토큰이 올바른 애플리케이션에 대해 발급되었는지 확인

    • 토큰이 만료되지 않았는지 확인

    • 필요한 경우(예: 백 엔드 서버가 Windows 통합 인증을 사용하도록 구성된 경우 Kerberos 티켓을 받기 위해) 사용자 ID 사용

  5. 에지 토큰이 유효한 경우 웹 애플리케이션 프록시 HTTP 또는 HTTPS를 사용하여 게시된 웹 애플리케이션에 HTTPS 요청을 전달합니다.

  6. 이제 클라이언트에서 게시된 웹 애플리케이션에 액세스할 수 있습니다. 그러나 게시된 애플리케이션이 사용자의 추가 인증을 요구하도록 구성되어 있을 수도 있습니다. 예를 들어 게시된 웹 애플리케이션이 SharePoint 사이트이고 추가 인증을 요구하지 않는 경우 사용자는 브라우저에서 SharePoint 사이트를 볼 수 있습니다.

  7. 웹 애플리케이션 프록시 클라이언트 디바이스에 쿠키를 저장합니다. 쿠키는 웹 애플리케이션 프록시 이 세션이 이미 사전 인증되었으며 추가 사전 인증이 필요하지 않음을 식별하는 데 사용됩니다.

Important

외부 URL 및 백 엔드 서버 URL을 구성할 때 IP 주소가 아니라 FQDN(정규화된 도메인 이름)을 포함해야 합니다.

참고 항목

이 항목에는 설명한 절차의 일부를 자동화하는 데 사용할 수 있는 샘플 Windows PowerShell cmdlet이 포함되어 있습니다. 자세한 내용은 참조 Cmdlet를 사용 하 여합니다.

웹 브라우저 클라이언트용 클레임 기반 애플리케이션 게시

인증에 클레임을 사용하는 애플리케이션을 게시하려면 애플리케이션의 신뢰 당사자 트러스트를 페더레이션 서비스에 추가해야 합니다.

클레임 기반 애플리케이션을 게시하고 브라우저에서 애플리케이션에 액세스할 때의 일반적인 인증 흐름은 다음과 같습니다.

  1. 클라이언트는 웹 브라우저를 사용하여 클레임 기반 애플리케이션에 액세스하려고 합니다. 예를 들면 다음과 같습니다 https://appserver.contoso.com/claimapp/.

  2. 웹 브라우저는 요청을 AD FS 서버로 리디렉션하는 웹 애플리케이션 프록시 서버에 HTTPS 요청을 보냅니다.

  3. AD FS 서버는 사용자 및 디바이스를 인증하고 요청을 웹 애플리케이션 프록시 다시 리디렉션합니다. 이제 요청에 에지 토큰이 포함되어 있습니다. AD FS 서버는 사용자가 이미 AD FS 서버에 대해 인증을 수행했기 때문에 요청에 SSO(Single Sign-On) 쿠키를 추가합니다.

  4. 웹 애플리케이션 프록시 토큰의 유효성을 검사하고, 자체 쿠키를 추가하고, 백 엔드 서버에 요청을 전달합니다.

  5. 백 엔드 서버는 요청을 AD FS 서버로 리디렉션하여 애플리케이션 보안 토큰을 가져옵니다.

  6. 요청은 AD FS 서버에 의해 백 엔드 서버로 리디렉션됩니다. 이제 요청에 애플리케이션 토큰 및 SSO 쿠키가 포함되어 있습니다. 사용자에게 애플리케이션에 대한 액세스 권한이 부여되며, 사용자는 사용자 이름이나 암호를 입력할 필요가 없습니다.

이 절차에서는 웹 브라우저 클라이언트에서 액세스할 수 있는 SharePoint 사이트와 같은 클레임 기반 애플리케이션을 게시하는 방법에 대해 설명합니다. 시작하기 전에 다음 작업을 완료했는지 확인합니다.

  • AD FS 관리 콘솔에서 애플리케이션에 대한 신뢰 당사자 트러스트를 만들었습니다.

  • 웹 애플리케이션 프록시 서버의 인증서가 게시하려는 애플리케이션에 적합한지 확인했습니다.

클레임 기반 애플리케이션을 게시하려면

  1. 웹 애플리케이션 프록시 서버의 원격 액세스 관리 콘솔의 탐색 창에서 웹 애플리케이션 프록시 클릭한 다음 작업 창에서 게시를 클릭합니다.

  2. 새 애플리케이션 게시 마법사시작 페이지에서 다음을 클릭합니다.

  3. 사전 인증 페이지에서 AD FS(Active Directory Federation Services)를 클릭한 다음 다음을 클릭합니다.

  4. 지원되는 클라이언트 페이지에서 웹 및 MSOFBA를 선택하고 다음을 클릭합니다.

  5. 신뢰 당사자 페이지의 신뢰 당사자 목록에서 게시할 애플리케이션의 신뢰 당사자를 선택하고 다음을 클릭합니다.

  6. 게시 설정 페이지에서 다음 작업을 수행한 후 다음을 클릭합니다.

    • 이름 상자에 애플리케이션의 이름을 입력합니다.

      이 이름은 원격 액세스 관리 콘솔의 게시된 애플리케이션 목록에만 사용됩니다.

    • 외부 URL 상자에 이 애플리케이션의 외부 URL을 입력합니다(예: .)https://sp.contoso.com/app1/.

    • 외부 인증서 목록에서 주체에 외부 URL이 포함된 인증서를 선택합니다.

    • 백 엔드 서버 URL 상자에 백 엔드 서버의 URL을 입력합니다. 이 값은 외부 URL을 입력할 때 자동으로 입력되며 백 엔드 서버 URL이 다른 경우에만 변경해야 합니다. 예를 들어 https://sp/app1/.

      참고 항목

      웹 애플리케이션 프록시 URL에서 호스트 이름을 번역할 수 있지만 경로 이름을 번역할 수는 없습니다. 따라서 서로 다른 호스트 이름을 입력할 수 있지만 경로 이름은 같아야 합니다. 예를 들어 외부 URL 및 의 https://apps.contoso.com/app1/ 백 엔드 서버 URL을 입력할 수 있습니다. https://app-server/app1/. 그러나 외부 URL 및 백 엔드 서버 URLhttps://apps.contoso.com/internal-app1/https://apps.contoso.com/app1/ 입력할 수 없습니다.

  7. 확인 페이지에서 설정을 검토하고 게시를 클릭합니다. PowerShell 명령을 복사하여 게시된 추가 애플리케이션을 설정할 수 있습니다.

  8. 결과 페이지에서 애플리케이션이 게시되었는지 확인하고 닫기를 클릭합니다.

Windows PowerShell 해당 명령

다음 Windows PowerShell cmdlet은 이전 절차와 같은 기능을 수행합니다. 서식 제약 조건으로 인해 각 cmdlet이 여러 줄에 자동 줄 바꿈되어 표시될 수 있지만 각 cmdlet을 한 줄에 입력하세요.

Add-WebApplicationProxyApplication
    -BackendServerURL 'https://sp.contoso.com/app1/'
    -ExternalCertificateThumbprint '1a2b3c4d5e6f1a2b3c4d5e6f1a2b3c4d5e6f1a2b'
    -ExternalURL 'https://sp.contoso.com/app1/'
    -Name 'SP'
    -ExternalPreAuthentication ADFS
    -ADFSRelyingPartyName 'SP_Relying_Party'

웹 브라우저 클라이언트용 Windows 통합 인증 기반 애플리케이션 게시

웹 애플리케이션 프록시 사용하여 통합 Windows 인증 사용하는 애플리케이션을 게시할 수 있습니다. 즉, 웹 애플리케이션 프록시 필요에 따라 사전 인증을 수행한 다음 통합 Windows 인증 사용하는 게시된 애플리케이션에 SSO를 수행할 수 있습니다. Windows 통합 인증을 사용하는 애플리케이션을 게시하려면 애플리케이션의 비 클레임 인식 신뢰 당사자 트러스트를 페더레이션 서비스에 추가해야 합니다.

웹 애플리케이션 프록시 SSO(Single Sign-On)를 수행하고 Kerberos 제한 위임을 사용하여 자격 증명 위임을 수행하려면 웹 애플리케이션 프록시 서버를 할 일에 조인해야 합니다기본. 계획 Active Directory를 참조하세요.

사용자가 통합 Windows 인증 사용하는 애플리케이션에 액세스할 수 있도록 하려면 웹 애플리케이션 프록시 서버에서 게시된 애플리케이션에 대한 사용자 위임을 제공할 수 있어야 합니다. 이 작업은 도메인 컨트롤러에서 모든 애플리케이션에 대해 수행할 수 있습니다. Windows Server 2012 R2 또는 Windows Server 2012에서 실행되는 경우 백 엔드 서버에서 이 작업을 수행할 수도 있습니다. 자세한 내용은 Kerberos 인증의 새로운 기능을 참조하세요.

통합 Windows 인증 사용하여 애플리케이션을 게시하도록 웹 애플리케이션 프록시 구성하는 방법에 대한 연습은 통합 Windows 인증 사용하도록 사이트 구성을 참조하세요.

통합 Windows 인증 사용하여 백 엔드 서버에 사용하는 경우 웹 애플리케이션 프록시 게시된 애플리케이션 간의 인증은 클레임 기반이 아니라 Kerberos 제한 위임을 사용하여 최종 사용자를 애플리케이션에 인증합니다. 일반적인 흐름은 다음과 같습니다.

  1. 클라이언트는 웹 브라우저를 사용하여 비 클레임 기반 애플리케이션에 액세스하려고 합니다. 예를 들면 다음과 같습니다 https://appserver.contoso.com/nonclaimapp/.

  2. 웹 브라우저는 요청을 AD FS 서버로 리디렉션하는 웹 애플리케이션 프록시 서버에 HTTPS 요청을 보냅니다.

  3. AD FS 서버는 사용자를 인증하고 요청을 웹 애플리케이션 프록시 다시 리디렉션합니다. 이제 요청에 에지 토큰이 포함되어 있습니다.

  4. 웹 애플리케이션 프록시 토큰의 유효성을 검사합니다.

  5. 토큰이 유효한 경우 웹 애플리케이션 프록시 사용자를 대신하여 do기본 컨트롤러에서 Kerberos 티켓을 가져옵니다.

  6. 웹 애플리케이션 프록시 SPNEGO(Simple and Protected GSS-API Negotiation Mechanism) 토큰의 일부로 Kerberos 티켓을 요청에 추가하고 백 엔드 서버에 요청을 전달합니다. 요청에 Kerberos 티켓이 포함되어 있으므로 추가 인증 없이 사용자에게 애플리케이션에 대한 액세스 권한이 부여됩니다.

이 절차에서는 웹 브라우저 클라이언트에서 액세스할 수 있는 Outlook Web App과 같은 Windows 통합 인증을 사용하는 애플리케이션을 게시하는 방법에 대해 설명합니다. 시작하기 전에 다음 작업을 완료했는지 확인합니다.

  • AD FS 관리 콘솔에서 애플리케이션에 대한 비 클레임 인식 신뢰 당사자 트러스트를 만들었습니다.

  • -PrincipalsAllowedToDelegateToAccount 매개 변수와 함께 Set-ADUser cmdlet을 사용하거나 도메인 컨트롤러에서 Kerberos 제한 위임을 지원하도록 백 엔드 서버 구성. 백 엔드 서버가 Windows Server 2012 R2 또는 Windows Server 2012에서 실행되는 경우 백 엔드 서버에서 이 PowerShell 명령을 실행할 수도 있습니다.

  • 웹 애플리케이션 프록시 서버가 백 엔드 서버의 서비스 주체 이름에 위임하도록 구성되었는지 확인했습니다.

  • 웹 애플리케이션 프록시 서버의 인증서가 게시하려는 애플리케이션에 적합한지 확인했습니다.

클레임 기반이 아닌 애플리케이션을 게시하려면

  1. 웹 애플리케이션 프록시 서버의 원격 액세스 관리 콘솔의 탐색 창에서 웹 애플리케이션 프록시 클릭한 다음 작업 창에서 게시를 클릭합니다.

  2. 새 애플리케이션 게시 마법사시작 페이지에서 다음을 클릭합니다.

  3. 사전 인증 페이지에서 AD FS(Active Directory Federation Services)를 클릭한 다음 다음을 클릭합니다.

  4. 지원되는 클라이언트 페이지에서 웹 및 MSOFBA를 선택하고 다음을 클릭합니다.

  5. 신뢰 당사자 페이지의 신뢰 당사자 목록에서 게시할 애플리케이션의 신뢰 당사자를 선택하고 다음을 클릭합니다.

  6. 게시 설정 페이지에서 다음 작업을 수행한 후 다음을 클릭합니다.

    • 이름 상자에 애플리케이션의 이름을 입력합니다.

      이 이름은 원격 액세스 관리 콘솔의 게시된 애플리케이션 목록에만 사용됩니다.

    • 외부 URL 상자에 이 애플리케이션의 외부 URL을 입력합니다(예: .)https://owa.contoso.com/.

    • 외부 인증서 목록에서 주체에 외부 URL이 포함된 인증서를 선택합니다.

    • 백 엔드 서버 URL 상자에 백 엔드 서버의 URL을 입력합니다. 이 값은 외부 URL을 입력할 때 자동으로 입력되며 백 엔드 서버 URL이 다른 경우에만 변경해야 합니다. 예를 들어 https://owa/.

      참고 항목

      웹 애플리케이션 프록시 URL에서 호스트 이름을 번역할 수 있지만 경로 이름을 번역할 수는 없습니다. 따라서 서로 다른 호스트 이름을 입력할 수 있지만 경로 이름은 같아야 합니다. 예를 들어 외부 URL 및 의 https://apps.contoso.com/app1/ 백 엔드 서버 URL을 입력할 수 있습니다. https://app-server/app1/. 그러나 외부 URL 및 백 엔드 서버 URLhttps://apps.contoso.com/internal-app1/https://apps.contoso.com/app1/ 입력할 수 없습니다.

    • 백 엔드 서버 SPN 상자에 백 엔드 서버의 서비스 사용자 이름(예: HTTP/owa.contoso.com)을 입력합니다.

  7. 확인 페이지에서 설정을 검토하고 게시를 클릭합니다. PowerShell 명령을 복사하여 게시된 추가 애플리케이션을 설정할 수 있습니다.

  8. 결과 페이지에서 애플리케이션이 게시되었는지 확인하고 닫기를 클릭합니다.

Windows PowerShell 해당 명령

다음 Windows PowerShell cmdlet은 이전 절차와 같은 기능을 수행합니다. 서식 제약 조건으로 인해 각 cmdlet이 여러 줄에 자동 줄 바꿈되어 표시될 수 있지만 각 cmdlet을 한 줄에 입력하세요.

Add-WebApplicationProxyApplication
    -BackendServerAuthenticationSpn 'HTTP/owa.contoso.com'
    -BackendServerURL 'https://owa.contoso.com/'
    -ExternalCertificateThumbprint '1a2b3c4d5e6f1a2b3c4d5e6f1a2b3c4d5e6f1a2b'
    -ExternalURL 'https://owa.contoso.com/'
    -Name 'OWA'
    -ExternalPreAuthentication ADFS
    -ADFSRelyingPartyName 'Non-Claims_Relying_Party'

MS-OFBA를 사용하는 애플리케이션 게시

웹 애플리케이션 프록시 백 엔드 서버의 문서 및 데이터에 액세스하는 Microsoft Word와 같은 Microsoft Office 클라이언트의 액세스를 지원합니다. 이러한 애플리케이션과 표준 브라우저 간의 유일한 차이점은 STS로의 리디렉션은 일반 HTTP 리디렉션이 아니라 지정된 대로 특수 MS-OFBA 헤더를 사용하여 수행된다는 https://msdn.microsoft.com/library/dd773463(v=office.12).aspx것입니다. 백 엔드 애플리케이션은 클레임 또는 IWA일 수 있습니다. MS-OFBA를 사용하는 클라이언트용 애플리케이션을 게시하려면 애플리케이션에 대한 신뢰 당사자 트러스트를 페더레이션 서비스에 추가해야 합니다. 애플리케이션에 따라 클레임 기반 인증 또는 Windows 통합 인증을 사용할 수 있습니다. 따라서 애플리케이션에 따라 관련 신뢰 당사자 트러스트를 추가해야 합니다.

웹 애플리케이션 프록시 SSO(Single Sign-On)를 수행하고 Kerberos 제한 위임을 사용하여 자격 증명 위임을 수행하려면 웹 애플리케이션 프록시 서버를 할 일에 조인해야 합니다기본. 계획 Active Directory를 참조하세요.

애플리케이션에서 클레임 기반 인증을 사용하는 경우에는 추가 계획 단계가 없습니다. 애플리케이션에서 통합 Windows 인증 사용하는 경우 웹 브라우저 클라이언트에 대한 Windows 통합 인증 기반 애플리케이션 게시를 참조하세요.

클레임 기반 인증을 사용하여 MS-OFBA 프로토콜을 사용하는 클라이언트에 대한 인증 흐름은 아래에 설명되어 있습니다. 이 시나리오의 인증에서는 URL 또는 본문에 애플리케이션 토큰을 사용할 수 있습니다.

  1. Office 프로그램에서 작업 중인 사용자가 최근 문서 목록에서 SharePoint 사이트에 있는 파일을 엽니다.

  2. Office 프로그램에서 사용자가 자격 증명을 입력해야 하는 브라우저 컨트롤이 포함된 창을 표시합니다.

    참고 항목

    클라이언트가 이미 인증된 경우 이 창이 표시되지 않을 수도 있습니다.

  3. 웹 애플리케이션 프록시 인증을 수행하는 AD FS 서버로 요청을 리디렉션합니다.

  4. AD FS 서버는 요청을 웹 애플리케이션 프록시 다시 리디렉션합니다. 이제 요청에 에지 토큰이 포함되어 있습니다.

  5. AD FS 서버는 사용자가 이미 AD FS 서버에 대해 인증을 수행했기 때문에 요청에 SSO(Single Sign-On) 쿠키를 추가합니다.

  6. 웹 애플리케이션 프록시 토큰의 유효성을 검사하고 백 엔드 서버에 요청을 전달합니다.

  7. 백 엔드 서버는 요청을 AD FS 서버로 리디렉션하여 애플리케이션 보안 토큰을 가져옵니다.

  8. 요청이 백 엔드 서버로 리디렉션됩니다. 이제 요청에 애플리케이션 토큰 및 SSO 쿠키가 포함되어 있습니다. 사용자에게 SharePoint 사이트에 대한 액세스 권한이 부여되며, 사용자는 사용자 이름이나 암호를 입력하지 않고 파일을 볼 수 있습니다.

MS-OFBA를 사용하는 애플리케이션을 게시하는 단계는 클레임 기반 애플리케이션 또는 비 클레임 기반 애플리케이션에 대한 단계와 동일합니다. 클레임 기반 애플리케이션의 경우 웹 브라우저 클라이언트용 클레임 기반 애플리케이션 게시를 참조하세요. 비 클레임 기반 애플리케이션은 웹 브라우저 클라이언트용 Windows 통합 인증 기반 애플리케이션 게시를 참조하세요. 웹 애플리케이션 프록시 클라이언트를 자동으로 검색하고 필요에 따라 사용자를 인증합니다.

HTTP 기본을 사용하는 애플리케이션 게시

HTTP Basic은 스마트폰을 비롯한 다양한 클라이언트를 Exchange 사서함과 연결하기 위해 많은 프로토콜에서 사용하는 권한 부여 프로토콜입니다. HTTP 기본에 대한 자세한 내용은 RFC 2617을 참조하세요. 웹 애플리케이션 프록시 일반적으로 리디렉션을 사용하여 AD FS와 상호 작용합니다. 대부분의 리치 클라이언트는 쿠키 또는 상태 관리를 지원하지 않습니다. 이러한 방식으로 웹 애플리케이션 프록시 사용하면 HTTP 앱이 페더레이션 서비스에 애플리케이션에 대한 비 클레임 신뢰 당사자 트러스트를 수신할 수 있습니다. 계획 Active Directory를 참조하세요.

HTTP Basic을 사용하는 클라이언트에 대한 인증 흐름은 아래와 다이어그램에 설명되어 있습니다.

Authentication diagram for HTTP Basic

  1. 사용자가 게시된 웹 애플리케이션에 전화 클라이언트에 액세스하려고 시도합니다.

  2. 앱은 웹 애플리케이션 프록시 게시한 URL에 HTTPS 요청을 보냅니다.

  3. 요청에 자격 증명이 포함되어 있지 않으면 웹 애플리케이션 프록시 인증 AD FS 서버의 URL을 포함하는 앱에 대한 HTTP 401 응답을 반환합니다.

  4. 사용자는 권한 부여가 기본으로 설정되고 사용자 이름 및 www-authenticate 요청 헤더에 있는 사용자의 Base 64 암호화 암호로 설정된 HTTPS 요청을 앱에 다시 보냅니다.

  5. 디바이스를 AD FS로 리디렉션할 수 없으므로 웹 애플리케이션 프록시 사용자 이름 및 암호를 포함하는 자격 증명을 사용하여 AD FS에 인증 요청을 보냅니다. 토큰은 디바이스를 대신하여 획득됩니다.

  6. AD FS로 전송되는 요청 수를 최소화하기 위해 웹 애플리케이션 프록시 토큰이 유효한 한 캐시된 토큰을 사용하여 후속 클라이언트 요청의 유효성을 검사합니다. 웹 애플리케이션 프록시 주기적으로 캐시를 클린. 성능 카운터를 사용하여 캐시의 크기를 볼 수 있습니다.

  7. 토큰이 유효한 경우 웹 애플리케이션 프록시 백 엔드 서버에 요청을 전달하고 사용자에게 게시된 웹 애플리케이션에 대한 액세스 권한이 부여됩니다.

다음 절차에서는 HTTP 기본 애플리케이션을 게시하는 방법을 설명합니다.

HTTP 기본 애플리케이션을 게시하려면

  1. 웹 애플리케이션 프록시 서버의 원격 액세스 관리 콘솔의 탐색 창에서 웹 애플리케이션 프록시 클릭한 다음 작업 창에서 게시를 클릭합니다.

  2. 새 애플리케이션 게시 마법사시작 페이지에서 다음을 클릭합니다.

  3. 사전 인증 페이지에서 AD FS(Active Directory Federation Services)를 클릭한 다음 다음을 클릭합니다.

  4. 지원되는 클라이언트 페이지에서 HTTP 기본 선택하고 다음을 클릭합니다.

    작업 공간에 조인된 디바이스에서만 Exchange에 대한 액세스를 사용하도록 설정하려면 작업 공간에 조인된 디바이스에 대해서만 액세스 사용 상자를 선택합니다. 자세한 내용은 회사 애플리케이션에서 SSO 및 Seamless Second Factor Authentication을 위해 모든 디바이스에서 Workplace에 조인을 참조 하세요.

  5. 신뢰 당사자 페이지의 신뢰 당사자 목록에서 게시할 애플리케이션의 신뢰 당사자를 선택하고 다음을 클릭합니다. 이 목록에는 온-클레임 신뢰 당사자만 포함됩니다.

  6. 게시 설정 페이지에서 다음 작업을 수행한 후 다음을 클릭합니다.

    • 이름 상자에 애플리케이션의 이름을 입력합니다.

      이 이름은 원격 액세스 관리 콘솔의 게시된 애플리케이션 목록에만 사용됩니다.

    • 외부 URL 상자에 이 애플리케이션의 외부 URL을 입력합니다(예: mail.contoso.com

    • 외부 인증서 목록에서 주체에 외부 URL이 포함된 인증서를 선택합니다.

    • 백 엔드 서버 URL 상자에 백 엔드 서버의 URL을 입력합니다. 이 값은 외부 URL을 입력할 때 자동으로 입력되며 백 엔드 서버 URL이 다른 경우에만 변경해야 합니다. 예를 들어 mail.contoso.com.

  7. 확인 페이지에서 설정을 검토하고 게시를 클릭합니다. PowerShell 명령을 복사하여 게시된 추가 애플리케이션을 설정할 수 있습니다.

  8. 결과 페이지에서 애플리케이션이 게시되었는지 확인하고 닫기를 클릭합니다.

Windows PowerShell 해당 명령

다음 Windows PowerShell cmdlet은 이전 절차와 같은 기능을 수행합니다. 서식 제약 조건으로 인해 각 cmdlet이 여러 줄에 자동 줄 바꿈되어 표시될 수 있지만 각 cmdlet을 한 줄에 입력하세요.

이 Windows PowerShell 스크립트를 사용하면 작업 공간 조인 디바이스뿐만 아니라 모든 디바이스에 대한 사전 인증이 가능합니다.

Add-WebApplicationProxyApplication
     -BackendServerUrl 'https://mail.contoso.com'
     -ExternalCertificateThumbprint '697F4FF0B9947BB8203A96ED05A3021830638E50'
     -ExternalUrl 'https://mail.contoso.com'
     -Name 'Exchange'
     -ExternalPreAuthentication ADFSforRichClients
     -ADFSRelyingPartyName 'EAS_Relying_Party'

다음은 작업 공간 조인 디바이스만 사전 인증합니다.

Add-WebApplicationProxyApplication
     -BackendServerUrl 'https://mail.contoso.com'
     -ExternalCertificateThumbprint '697F4FF0B9947BB8203A96ED05A3021830638E50'
     -EnableHTTPRedirect:$true
     -ExternalUrl 'https://mail.contoso.com'
     -Name 'Exchange'
     -ExternalPreAuthentication ADFSforRichClients
     -ADFSRelyingPartyName 'EAS_Relying_Party'

Microsoft Store 앱과 같은 OAuth2를 사용하는 애플리케이션 게시

Microsoft Store 앱용 애플리케이션을 게시하려면 애플리케이션에 대한 신뢰 당사자 트러스트를 페더레이션 서비스에 추가해야 합니다.

웹 애플리케이션 프록시 SSO(Single Sign-On)를 수행하고 Kerberos 제한 위임을 사용하여 자격 증명 위임을 수행하려면 웹 애플리케이션 프록시 서버를 할 일에 조인해야 합니다기본. 계획 Active Directory를 참조하세요.

참고 항목

웹 애플리케이션 프록시 OAuth 2.0 프로토콜을 사용하는 Microsoft Store 앱에 대해서만 게시를 지원합니다.

AD FS 관리 콘솔에서 OAuth 엔드포인트가 프록시를 사용하도록 설정되어 있는지 확인해야 합니다. OAuth 엔드포인트에서 프록시를 사용하는지 확인하려면 AD FS 관리 콘솔을 열고 서비스를 확장한 다음, 엔드포인트를 클릭합니다. 엔드포인트 목록에서 OAuth 엔드포인트를 찾아서 프록시 사용 열의 값이 인지 확인합니다.

Microsoft Store 앱을 사용하는 클라이언트에 대한 인증 흐름은 아래에 설명되어 있습니다.

참고 항목

웹 애플리케이션 프록시 인증을 위해 AD FS 서버로 리디렉션됩니다. Microsoft Store 앱은 리디렉션을 지원하지 않으므로 Microsoft Store 앱을 사용하는 경우 Set-WebApplicationProxyConfiguration cmdlet 및 OAuthAuthenticationURL 매개 변수를 사용하여 AD FS 서버의 URL을 설정해야 합니다.

Microsoft Store 앱은 Windows PowerShell을 사용하여 게시할 수 있습니다.

  1. 클라이언트는 Microsoft Store 앱을 사용하여 게시된 웹 애플리케이션에 액세스하려고 합니다.

  2. 앱은 웹 애플리케이션 프록시 게시한 URL에 HTTPS 요청을 보냅니다.

  3. 웹 애플리케이션 프록시 인증 AD FS 서버의 URL을 포함하는 앱에 대한 HTTP 401 응답을 반환합니다. 이 프로세스를 '검색'이라고 합니다.

    참고 항목

    앱이 인증 AD FS 서버의 URL을 알고 있고 OAuth 토큰 및 에지 토큰을 포함하는 콤보 토큰이 이미 있는 경우 이 인증 흐름에서 2단계와 3단계를 건너뜁니다.

  4. 앱은 AD FS 서버에 HTTPS 요청을 보냅니다.

  5. 앱은 웹 인증 브로커를 사용하여 사용자가 자격 증명을 입력하여 AD FS 서버에 인증하는 대화 상자를 생성합니다. 웹 인증 브로커에 대한 자세한 내용은 웹 인증 브로커를 참조하세요.

  6. 인증에 성공하면 AD FS 서버는 OAuth 토큰과 에지 토큰을 포함하는 콤보 토큰을 만들고 토큰을 앱에 보냅니다.

  7. 앱은 웹 애플리케이션 프록시 게시된 URL에 콤보 토큰이 포함된 HTTPS 요청을 보냅니다.

  8. 웹 애플리케이션 프록시 콤보 토큰을 두 부분으로 분할하고 에지 토큰의 유효성을 검사합니다.

  9. 에지 토큰이 유효한 경우 웹 애플리케이션 프록시 OAuth 토큰만 사용하여 백 엔드 서버로 요청을 전달합니다. 사용자에게 게시된 웹 애플리케이션에 대한 액세스 권한이 부여됩니다.

이 절차에서는 OAuth2용 애플리케이션을 게시하는 방법에 대해 설명합니다. 이 유형의 애플리케이션은 Windows PowerShell을 사용하여 게시할 수 있습니다. 시작하기 전에 다음 작업을 완료했는지 확인합니다.

  • AD FS 관리 콘솔에서 애플리케이션에 대한 신뢰 당사자 트러스트를 만들었습니다.

  • OAuth 엔드포인트가 AD FS 관리 콘솔에서 프록시를 사용하도록 설정되어 있는지 확인하고 URL 경로를 기록해 둡니다.

  • 웹 애플리케이션 프록시 서버의 인증서가 게시하려는 애플리케이션에 적합한지 확인했습니다.

OAuth2 앱을 게시하려면

  1. 웹 애플리케이션 프록시 서버의 원격 액세스 관리 콘솔의 탐색 창에서 웹 애플리케이션 프록시 클릭한 다음 작업 창에서 게시를 클릭합니다.

  2. 새 애플리케이션 게시 마법사시작 페이지에서 다음을 클릭합니다.

  3. 사전 인증 페이지에서 AD FS(Active Directory Federation Services)를 클릭한 다음 다음을 클릭합니다.

  4. 지원되는 클라이언트 페이지에서 OAuth2를 선택하고 다음을 클릭합니다.

  5. 신뢰 당사자 페이지의 신뢰 당사자 목록에서 게시할 애플리케이션의 신뢰 당사자를 선택하고 다음을 클릭합니다.

  6. 게시 설정 페이지에서 다음 작업을 수행한 후 다음을 클릭합니다.

    • 이름 상자에 애플리케이션의 이름을 입력합니다.

      이 이름은 원격 액세스 관리 콘솔의 게시된 애플리케이션 목록에만 사용됩니다.

    • 외부 URL 상자에 이 애플리케이션의 외부 URL을 입력합니다(예: .)https://server1.contoso.com/app1/.

    • 외부 인증서 목록에서 주체에 외부 URL이 포함된 인증서를 선택합니다.

      사용자가 URL에 HTTPS를 입력하지 않아도 앱에 액세스할 수 있도록 하려면 HTTP에서 HTTPS로 리디렉션 사용 상자를 선택합니다.

    • 백 엔드 서버 URL 상자에 백 엔드 서버의 URL을 입력합니다. 이 값은 외부 URL을 입력할 때 자동으로 입력되며 백 엔드 서버 URL이 다른 경우에만 변경해야 합니다. 예를 들어 https://sp/app1/.

      참고 항목

      웹 애플리케이션 프록시 URL에서 호스트 이름을 번역할 수 있지만 경로 이름을 번역할 수는 없습니다. 따라서 서로 다른 호스트 이름을 입력할 수 있지만 경로 이름은 같아야 합니다. 예를 들어 외부 URL 및 의 https://apps.contoso.com/app1/ 백 엔드 서버 URL을 입력할 수 있습니다. https://app-server/app1/. 그러나 외부 URL 및 백 엔드 서버 URLhttps://apps.contoso.com/internal-app1/https://apps.contoso.com/app1/ 입력할 수 없습니다.

  7. 확인 페이지에서 설정을 검토하고 게시를 클릭합니다. PowerShell 명령을 복사하여 게시된 추가 애플리케이션을 설정할 수 있습니다.

  8. 결과 페이지에서 애플리케이션이 게시되었는지 확인하고 닫기를 클릭합니다.

서식 제약 조건으로 인해 각 cmdlet이 여러 줄에 자동 줄 바꿈되어 표시될 수 있지만 각 cmdlet을 한 줄에 입력하세요.

fs.contoso.com 페더레이션 서버 주소 및 /adfs/oauth2/의 URL 경로에 대한 OAuth 인증 URL을 설정하려면 다음을 수행합니다.

Set-WebApplicationProxyConfiguration -OAuthAuthenticationURL 'https://fs.contoso.com/adfs/oauth2/'

애플리케이션을 게시하려면

Add-WebApplicationProxyApplication
    -BackendServerURL 'https://storeapp.contoso.com/'
    -ExternalCertificateThumbprint '1a2b3c4d5e6f1a2b3c4d5e6f1a2b3c4d5e6f1a2b'
    -ExternalURL 'https://storeapp.contoso.com/'
    -Name 'Microsoft Store app Server'
    -ExternalPreAuthentication ADFS
    -ADFSRelyingPartyName 'Store_app_Relying_Party'
    -UseOAuthAuthentication