다음을 통해 공유


Microsoft Entra 개인 액세스를 통해 리소스에 대한 SSO(Single Sign-On)에 Kerberos를 사용합니다.

Microsoft Entra 개인 액세스를 통해 게시된 온-프레미스 리소스에 대해 Single Sign-On을 제공합니다. Microsoft Entra 개인 액세스는 Kerberos를 사용하여 이러한 리소스를 지원합니다. 선택적으로 비즈니스용 Windows Hello 클라우드 Kerberos 신뢰를 사용하여 사용자에게 Single Sign-On을 허용합니다.

필수 조건

Single Sign-On을 시작 전에 환경이 준비되었는지 확인합니다.

  • Active Directory 포리스트. 가이드에서는 공개적으로 확인할 수 있는 포리스트 도메인 이름을 사용합니다. 그러나 공개적으로 확인된 도메인은 요구 사항이 아닙니다.
  • Microsoft Entra 개인 액세스 전달 프로필을 사용하도록 설정했습니다.
  • Microsoft Entra 프라이빗 액세스 커넥터의 최신 버전은 도메인 컨트롤러에 액세스할 수 있는 Windows 서버에 설치되어 있습니다.
  • 전역 보안 액세스 클라이언트의 최신 버전입니다. 클라이언트에 대한 자세한 내용은 전역 보안 액세스 클라이언트를 참조하세요.

Single Sign-On에 사용할 리소스 게시

Single Sign-On을 테스트하려면 파일 공유를 게시하는 새 엔터프라이즈 애플리케이션을 만듭니다. 엔터프라이즈 애플리케이션을 사용하여 파일 공유를 게시하면 조건부 액세스 정책을 리소스에 할당하고 다단계 인증과 같은 추가 보안 제어를 적용할 수 있습니다.

  1. 최소한 애플리케이션 관리자Microsoft Entra에 로그인합니다.
  2. 전역 보안 액세스>애플리케이션>엔터프라이즈 애플리케이션으로 이동합니다.
  3. 새 애플리케이션을 선택합니다.
  4. 포트 445/TCP를 사용하여 파일 서버의 IP로 새 앱 세그먼트를 추가한 다음 저장을 선택합니다. SMB(서버 메시지 블록) 프로토콜은 이 포트를 사용합니다.
  5. 만든 엔터프라이즈 애플리케이션을 열고 사용자 및 그룹을 선택하여 리소스에 대한 액세스 권한을 할당합니다.

Microsoft Entra ID 조인 디바이스 - 암호 기반 SSO

사용자가 암호를 사용하여 Windows에 로그인하는 경우 이 가이드 이상의 추가 구성이 필요하지 않습니다.

Microsoft Entra ID에 조인된 디바이스는 Microsoft Entra ID Connect에 의해 동기화된 Active Directory 도메인 및 사용자 정보를 사용합니다. Windows 도메인 컨트롤러 로케이터는 동기화로 인해 도메인 컨트롤러를 찾습니다. 사용자의 UPN(사용자 계정 이름)과 암호는 Kerberos TGT(티켓 부여 티켓)를 요청하는 데 사용됩니다. 이 흐름에 대한 자세한 내용은 Microsoft Entra 조인 디바이스에서 온-프레미스 리소스에 대한 SSO가 작동하는 방식을 참조하세요.

Microsoft Entra ID 조인 및 Microsoft Entra ID 하이브리드 조인 디바이스 – 비즈니스용 Windows Hello Single Sign-On

비즈니스용 Windows Hello에는 이 가이드 이상의 추가 구성이 필요합니다.

Microsoft Entra ID를 사용하여 하이브리드 클라우드 Kerberos Trust를 배포하는 것이 좋습니다. 클라우드 Kerberos 신뢰를 사용하는 디바이스는 Single Sign-On에 사용되는 TGT 티켓을 가져옵니다. 클라우드 Kerberos 신뢰에 대해 자세히 알아보려면 Microsoft Entra ID를 사용하여 온-프레미스 리소스에 암호 없는 보안 키 로그인 사용을 참조하세요.

온-프레미스 Active Directory를 사용하여 비즈니스용 Windows Hello 클라우드 Kerberos 신뢰를 배포하려면

  1. Microsoft Entra ID Kerberos 서버 개체를 만듭니다. 개체를 만드는 방법을 알아보려면 AzureADHybridAuthenticationManagement 모듈 설치를 참조하세요.
  2. Intune 또는 그룹 정책을 사용하여 디바이스에서 WHfB 클라우드 트러스트를 사용하도록 설정합니다. WHfB를 사용하도록 설정하는 방법을 알아보려면 Cloud Kerberos 신뢰 배포 가이드를 참조하세요.

도메인 컨트롤러 게시

클라이언트가 Kerberos 티켓을 가져오려면 도메인 컨트롤러를 게시해야 합니다. 온-프레미스 리소스에 대한 Single Sign-On에는 티켓이 필요합니다.

최소한 프라이빗 액세스 커넥터가 설치된 Active Directory 사이트에 구성된 모든 도메인 컨트롤러를 게시합니다. 예를 들어, 프라이빗 액세스 커넥터가 브리즈번 데이터 센터에 있는 경우 브리즈번 데이터 센터에 모든 도메인 컨트롤러를 게시합니다.

온-프레미스 리소스에 대한 SSO를 사용하도록 설정하려면 도메인 컨트롤러 포트가 필요합니다.

포트 프로토콜 목적
88 UDP(User Datagram Protocol) / TCP(Transmission Control Protocol) Kerberos
389 UDP DC 로케이터
464 UDP/TCP 암호 변경 요청
123 UDP 시간 동기화

참고 항목

이 가이드에서는 온-프레미스 리소스에 대한 SSO 사용 설정에 중점을 두고 Windows 도메인 조인 클라이언트가 도메인 작업(암호 변경, 그룹 정책 등)을 수행하는 데 필요한 구성은 제외합니다.

  1. 최소한 애플리케이션 관리자Microsoft Entra에 로그인합니다.
  2. 전역 보안 액세스>애플리케이션>엔터프라이즈 애플리케이션으로 이동합니다.
  3. 새 애플리케이션을 선택하여 도메인 컨트롤러를 게시할 새 애플리케이션을 만듭니다.
  4. 애플리케이션 세그먼트 추가를 선택한 다음 표에 따라 모든 도메인 컨트롤러의 IP 또는 FQDN(정규화된 도메인 이름) 및 포트를 추가합니다. 프라이빗 액세스 커넥터가 있는 Active Directory 사이트의 도메인 컨트롤러만 게시되어야 합니다.

참고 항목

도메인 컨트롤러를 게시할 때 와일드카드 FQDN을 사용하지 말고 대신 특정 IP 또는 FQDN을 추가합니다.

엔터프라이즈 애플리케이션이 만들어지면 다시 앱을 찾아 사용자 및 그룹을 선택합니다. Active Directory에서 동기화된 모든 사용자를 추가합니다.

DNS 접미사 게시

전역 보안 액세스 클라이언트가 프라이빗 DNS 이름을 확인할 수 있도록 프라이빗 DNS를 구성합니다. Single Sign-On에는 프라이빗 DNS 이름이 필요합니다. 클라이언트는 이를 사용하여 온-프레미스 리소스에 게시된 리소스에 액세스합니다. 빠른 액세스를 사용하는 프라이빗 DNS 대한 자세한 내용은 how-to-configure-quick-access.md#add-private-dns-suffixes를 참조하세요.

  1. 전역 보안 액세스>애플리케이션>빠른 액세스로 이동합니다.
  2. 프라이빗 DNS 탭을 선택한 다음, 프라이빗 DNS 사용을 선택합니다.
  3. DNS 접미사 추가를 선택합니다. 최소한 Microsoft Entra ID에 동기화된 사용자를 호스팅하는 Active Directory 포리스트의 최상위 접미사를 추가합니다.
  4. 저장을 선택합니다.

Kerberos SSO를 사용하여 SMB 파일 공유에 액세스하는 방법

이 다이어그램은 비즈니스용 Windows Hello + Cloud Trust로 구성된 Windows 디바이스에서 SMB 파일 공유에 액세스하려고 할 때 Microsoft Entra 개인 액세스 작동하는 방법을 보여 줍니다. 이 예제에서 관리자는 빠른 액세스 프라이빗 DNS 및 두 개의 엔터프라이즈 앱을 구성했습니다. 하나는 도메인 컨트롤러용이고 다른 하나는 SMB 파일 공유용입니다.

SMB 파일 공유에 Kerberos SSO를 사용하는 Microsoft Entra 개인 액세스 다이어그램

Step 설명
A 사용자가 FQDN을 사용하여 SMB 파일 공유에 액세스하려고 합니다. GSA 클라이언트는 트래픽을 가로채서 SSE Edge로 터널합니다. Microsoft Entra ID의 권한 부여 정책은 사용자가 애플리케이션 및 조건부 액세스에 할당되었는지 여부와 같이 평가 및 적용됩니다. 사용자에게 권한이 부여되면 Microsoft Entra ID는 SMB 엔터프라이즈 애플리케이션에 대한 토큰을 발급합니다. 트래픽이 릴리스되어 애플리케이션의 액세스 토큰과 함께 Private Access 서비스로 계속 진행됩니다. Private Access 서비스는 액세스 토큰의 유효성을 검사하고 연결이 프라이빗 액세스 백 엔드 서비스로 조정됩니다. 그러면 연결이 프라이빗 네트워크 커넥터로 조정됩니다.
B 프라이빗 네트워크 커넥터는 DNS 쿼리를 수행하여 대상 서버의 IP 주소를 식별합니다. 프라이빗 네트워크의 DNS 서비스는 응답을 보냅니다. 프라이빗 네트워크 커넥터는 대상 SMB 파일 공유에 액세스한 다음 Kerberos 인증을 요청합니다.
C 클라이언트는 도메인 컨트롤러를 찾기 위해 SRV DNS 쿼리를 생성합니다. A단계가 반복되어 DNS 쿼리를 가로채고 사용자에게 빠른 액세스 애플리케이션에 대한 권한을 부여합니다. 프라이빗 네트워크 커넥터는 SRV DNS 쿼리를 프라이빗 네트워크로 보냅니다. DNS 서비스는 프라이빗 네트워크 커넥터를 통해 클라이언트에 DNS 응답을 보냅니다.
D Windows 디바이스는 Microsoft Entra ID(아직 없는 경우)에서 부분 TGT(Cloud TGT라고도 함)를 요청합니다. Microsoft Entra ID는 부분 TGT를 발급합니다.
E Windows는 C단계의 DNS 응답에 나열된 각 도메인 컨트롤러를 사용하여 UDP 포트 389를 통해 DC 로케이터 연결을 시작합니다. 단계 A는 반복되어 DC 로케이터 트래픽을 가로채고 온-프레미스 도메인 컨트롤러를 게시하는 엔터프라이즈 애플리케이션에 대한 사용자에게 권한을 부여합니다. 프라이빗 네트워크 커넥터는 DC 로케이터 트래픽을 각 도메인 컨트롤러로 보냅니다. 응답은 클라이언트에 다시 릴레이됩니다. Windows는 가장 빠른 응답으로 도메인 컨트롤러를 선택하고 캐시합니다.
F 클라이언트는 전체 TGT에 대해 부분 TGT를 교환합니다. 그런 다음 전체 TGT를 사용하여 SMB 파일 공유에 대한 TGS를 요청하고 받습니다.
G 클라이언트는 SMB 파일 공유에 TGS를 제공합니다. SMB 파일 공유는 TGS의 유효성을 검사합니다. 파일 공유에 대한 액세스 권한이 부여됩니다.

문제 해결

암호 인증을 사용하는 Microsoft Entra ID 조인 디바이스는 Microsoft Entra ID Connect에 의해 동기화되는 특성에 의존합니다. onPremisesDomainName, onPremisesUserPrincipalNameonPremisesSamAccountName 특성의 값이 올바른지 확인합니다. Graph 탐색기 및 PowerShell을 사용하여 값을 확인합니다.

이러한 값이 없으면 Microsoft Entra ID Connect 동기화 설정의 유효성을 검사하고 이러한 특성이 동기화되고 있는지 확인합니다. 특성 동기화에 대해 자세히 알아보려면 Microsoft Entra Connect 동기화: Microsoft Entra ID에 동기화된 특성을 참조하세요.

비즈니스용 Windows Hello를 사용하여 로그인하는 경우 권한이 없는 명령 프롬프트에서 명령을 실행합니다. dsregcmd /status

특성의 값이 YES인지 확인합니다.

PRT가 있어야 합니다. PRT에 대해 자세히 알아보려면 Windows 디바이스의 기본 새로 고침 토큰 문제 해결을 참조하세요.

OnPremTgt : 는 Entra Kerberos가 올바르게 구성되었고 사용자가 온-프레미스 리소스에 SSO에 대한 부분 TGT를 발급했음을 나타냅니다. 클라우드 Kerberos 신뢰 구성에 대해 자세히 알아보려면 온-프레미스 리소스에 암호 없는 보안 키 로그인을 참조하세요.

klist 명령을 실행합니다.

klist cloud_debug

Cloud Primary (Hybrid logon) TGT available: 필드의 값이 1인지 확인합니다.

nltest 명령을 실행합니다.

nltest /dsgetdc:contoso /keylist /kdc

DC 로케이터가 클라우드 Kerberos 신뢰 작업에 참여하는 도메인 컨트롤러를 반환하는지 확인합니다. 반환된 DC에는 klist 플래그가 있어야 합니다.

Windows 컴퓨터에서 Kerberos 네거티브 캐싱을 방지하는 방법

Kerberos는 사용자 또는 호스트 ID를 확인하는 Windows 서비스에 대해 기본 설정되는 인증 방법입니다. Kerberos 음성 캐싱으로 인해 Kerberos 티켓이 지연됩니다.

Kerberos 음성 캐싱은 전역 보안 액세스 클라이언트가 설치된 Windows 디바이스에서 발생합니다. GSA 클라이언트는 Kerberos 티켓을 위해 가장 가까운 도메인 컨트롤러에 연결을 시도하지만 GSA 클라이언트가 아직 연결되지 않았거나 그 순간 도메인 컨트롤러에 연결할 수 없기 때문에 요청이 실패합니다. 요청이 실패하면 클라이언트는 즉시 도메인 컨트롤러에 다시 연결을 시도하지 않습니다. 레지스트리의 기본 FarKdcTimeout 시간이 10분으로 설정되어 있기 때문입니다. GSA 클라이언트가 이 기본 시간인 10분 전에 연결될 수 있더라도 GSA 클라이언트는 부정적인 캐시 항목을 유지하고 도메인 컨트롤러 찾기 프로세스가 실패했다고 믿습니다. 기본 시간인 10분이 완료되면 GSA 클라이언트는 Kerberos 티켓을 사용하여 도메인 컨트롤러를 쿼리하고 연결에 성공합니다.

이 문제를 완화하려면 레지스트리에서 기본 FarKdcTimeout 시간을 변경하거나 GSA 클라이언트가 다시 시작될 때마다 Kerberos 캐시를 수동으로 즉시 플러시할 수 있습니다.

옵션 1: 레지스트리의 기본 FarKdcTimeout 시간 변경

Windows를 실행하는 경우 Kerberos 매개 변수를 수정하여 Kerberos 인증 문제를 해결하거나 Kerberos 프로토콜을 테스트할 수 있습니다.

Important

이 절, 방법 또는 작업에는 레지스트리를 수정하는 방법에 대한 단계가 포함되어 있습니다. 그러나 레지스트리를 잘못 수정하면 심각한 문제가 발생할 수 있습니다. 따라서 다음 단계를 신중하게 수행해야 합니다. 추가 보호를 위해 레지스트리를 수정하기 전에 백업합니다. 그러면 문제가 발생할 경우 레지스트리를 복원할 수 있습니다. 레지스트리를 백업하고 복원하는 방법에 대한 자세한 내용은 Windows에서 레지스트리를 백업 및 복원하는 방법을 참조하십시오.

매개 변수 키 아래의 레지스트리 항목 및 값

이 섹션에 나열된 레지스트리 항목은 다음 레지스트리 하위 키에 추가되어야 합니다.

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\Kerberos\Parameters

참고 항목

Parameters 키가 Kerberos 아래에 나열되지 않으면 키를 만들어야 합니다.

다음 FarKdcTimeout 레지스트리 항목 수정

  • 항목: FarKdcTimeout
  • 유형: REG_DWORD
  • 기본값: 0 (minutes)

도메인 컨트롤러 캐시의 다른 사이트에서 도메인 컨트롤러를 무효화하는 데 사용되는 시간 초과 값입니다.

옵션 2: 수동 Kerberos 캐시 제거

Kerberos 캐시를 수동으로 제거하도록 선택한 경우 GSA 클라이언트가 다시 시작될 때마다 이 단계를 완료해야 합니다.

관리자 권한으로 명령 프롬프트를 열고 다음 명령을 실행합니다. KLIST PURGE_BIND

다음 단계