싱글 사인온(SSO) 인증(사인온)된 사용자가 재인증 없이 다른 도메인 서비스에 액세스할 수 있도록 하는 기술입니다. 원격 데스크톱 서비스에 적용된 SSO를 사용하면 도메인 컴퓨터에 로그온한 사용자가 RDS 서버에 연결하거나 게시된 RemoteApp을 시작할 때 계정 자격 증명(사용자 이름 및 암호)을 다시 입력할 수 없습니다.
이 기사에서는 Windows Server 2016 및 2012 R2를 실행하는 RDS 서버에서 투명 SSO(Single Sign-On) 인증을 구성하는 특징에 대해 설명합니다.
시스템 요구사항:
- 연결 브로커 서버와 모든 RDS 서버는 Windows Server 2012 이상을 실행해야 합니다.
- SSO는 도메인 환경에서만 작동합니다. Active Directory 사용자 계정을 사용해야 하고, RDS 서버와 사용자의 워크스테이션이 AD 도메인에 포함되어야 합니다.
- RDP 8.0 이상을 rdp 클라이언트에서 사용해야 합니다(Windows XP에서는 이 버전의 RDP 클라이언트를 설치할 수 없음).
- rdp 클라이언트 측에서 지원되는 OS 버전은 Windows 10, 8.1 또는 7입니다.
- SSO는 비밀번호 인증에서만 작동합니다(스마트 카드는 지원되지 않음).
- 연결 설정의 RDP 보안 계층은 협상으로 설정되어야 합니다. 또는 SSL (TLS 1.0) 및 암호화 모드를 높음으로 또는 FIPS 준수 .
싱글 사인온 구성 절차는 다음 단계로 구성됩니다.
- RD 게이트웨이, RD 웹 및 RD 연결 브로커 서버에서 SSL 인증서를 발급 및 할당해야 합니다.
- RDWeb 서버에서 웹 SSO를 활성화해야 합니다.
- 자격 증명 위임을 위한 그룹 정책을 구성해야 합니다.
- 인증서 지문은 GPO를 사용하여 신뢰할 수 있는 .rdp 게시자에게 추가되어야 합니다.
먼저 SSL 인증서를 발급하고 할당해야 합니다. EKU(Enhanced Key Usage) 인증서 속성에서 서버 인증 식별자가 있어야 합니다. SSL 인증서를 얻는 절차는 이 문서의 범위를 벗어나므로 설명하지 않습니다(자체 서명된 SSL 인증서를 직접 생성할 수 있지만 그룹을 사용하는 모든 클라이언트의 신뢰할 수 있는 인증서에 배포해야 합니다. 정책).
인증서는 인증서에 할당됩니다. RDS 배포 섹션 속성.
그런 다음 "Windows 인증 " IIS RDWeb 디렉토리에 대한 웹 액세스 역할이 있는 모든 서버에서 "익명 인증" 비활성화 .
변경 사항을 저장한 후 IIS를 다시 시작하십시오.
iisreset /noforce
RD 게이트웨이를 사용하는 경우 내부 클라이언트 연결에 사용되지 않는지 확인합니다(로컬 주소에 대해 RD 게이트웨이 서버 우회 옵션을 선택해야 합니다.
다음 단계는 자격 증명 위임 정책의 구성입니다. 새 도메인 GPO를 만들고 RDS 서버에 대한 SSO 액세스를 허용해야 하는 사용자(컴퓨터)가 있는 OU에 연결합니다. 모든 도메인 사용자에 대해 SSO를 허용하려면 기본 도메인 정책을 편집할 수 있습니다.
이 정책은 다음 GPO 섹션에 있습니다. 컴퓨터 구성 -> 정책 -> 관리 템플릿 -> 시스템 -> 자격 증명 위임 -> 위임 기본 자격 증명 허용 . 이 정책은 특정 서버가 Windows 사용자의 자격 증명에 액세스하도록 허용합니다.
- 정책이 활성화되어야 합니다(활성화됨 );
- SSO 인증을 수행하기 위해 클라이언트가 자동으로 사용자 자격 증명을 보낼 수 있는 서버 목록에 RDS 서버 이름을 추가해야 합니다. 서버 추가 형식은 다음과 같습니다. TERMSRV/rd.contoso.com (모든 TERMSRV 문자는 대문자여야 합니다.) 도메인의 모든 터미널 서버에 이 권한을 부여해야 하는 경우(보안 수준이 낮음) TERMSRV/*.contoso.com 구성을 사용할 수 있습니다.
그런 다음 원격 응용 프로그램 게시자가 신뢰할 수 없다는 창 경고가 표시되지 않도록 "Site to Zone Assignment List"<정책을 사용하여 클라이언트 컴퓨터의 신뢰할 수 있는 영역에 연결 브로커 역할이 있는 서버 주소를 추가합니다. /강한> (Windows 10에서 파일 열기 보안 경고를 비활성화하는 방법 문서와 유사):사용자/컴퓨터 구성 -> 관리 도구 -> Windows 구성 요소 -> Internet Explorer -> 인터넷 제어판 -> 보안 페이지 .
FQDN 지정 서버 이름 RDCB 및 영역 2 (신뢰할 수 있는 사이트).
그런 다음 로그온 옵션을 활성화합니다. 사용자/컴퓨터 구성 -> 관리 도구 -> Windows 구성 요소 -> Internet Explorer -> 인터넷 제어판 -> 보안 -> 신뢰할 수 있는 사이트 영역 의 정책 드롭다운 목록에서 '현재 사용자 이름 및 비밀번호로 자동 로그온'을 선택합니다. .
클라이언트에서 그룹 정책을 업데이트한 후 RemoteApp을 시작하려고 하면 암호 프롬프트가 나타나지 않지만 경고 창이 나타납니다.
Do you trust the publisher of this RemoteApp program?
사용자가 로그온할 때마다 이 메시지가 표시되지 않도록 하려면 RD 연결 브로커에서 SSL 인증서 지문을 가져와 신뢰할 수 있는 rdp 게시자 목록에 추가해야 합니다. 이렇게 하려면 RDS 연결 브로커 서버에서 PowerShell 명령을 실행합니다.
Get-Childitem CERT:\LocalMachine\My
인증서 지문 값을 복사하여 RDP 게시자를 나타내는 인증서의 SHA1 지문 지정 정책의 지문 목록에 추가합니다. (컴퓨터 구성 -> 관리 템플릿 -> Windows 데스크톱 서비스 -> 원격 데스크톱 연결 클라이언트).
이제 SSO 구성이 끝났고 정책이 적용된 후 사용자는 암호를 다시 입력하지 않고 RDP를 사용하여 Windows Server RDS 팜에 연결할 수 있습니다.
이제 mstsc.exe(원격 데스크톱 연결 클라이언트)를 시작하고 RDS 서버의 이름을 지정하면 UserName 필드는 캡션과 함께 사용자 이름을 ([email protected]) 형식으로 자동으로 표시합니다.
Your Windows logon credentials will be used to connect.
SSO와 함께 RD 게이트웨이를 사용하려면 "RD 게이트웨이 인증 방법 설정 정책을 활성화해야 합니다. "(사용자 구성 -> 정책 -> 관리 템플릿 -> Windows 구성 요소 -> 원격 데스크톱 서비스 -> RD 게이트웨이)으로 이동하고 값을 "로컬로 로그온한 자격 증명 사용으로 설정합니다. ".
RD 웹 액세스에서 웹 SSO를 사용하려면 Microsoft 원격 데스크톱 서비스 웹 액세스 제어(MsRdpClientShell)라는 Active X 구성 요소가 활성화된 Internet Explorer를 사용하는 것이 좋습니다.