Microsoft Entra Domain Services에서 KCD(Kerberos 제한 위임) 구성
애플리케이션을 실행할 때 해당 애플리케이션이 다른 사용자의 컨텍스트에서 리소스에 액세스해야 할 수 있습니다. AD DS (Active Directory Domain Services)는 Kerberos 위임을 가능하게 하는 메커니즘을 지원합니다. Kerberos는 제한된 KCD(위임)를 사용자의 컨텍스트에서 액세스할 수 있는 특정 리소스를 정의하기 위해 이 메커니즘을 기반으로 합니다.
Microsoft Entra Domain Services 관리되는 도메인은 기존의 온-프레미스 AD DS 환경보다 더 안전하게 잠겨 있으므로 보다 안전한 리소스 기반 KCD를 사용합니다.
이 문서에서는 Domain Services 관리되는 도메인에서 리소스 기반 Kerberos 제한 위임을 구성하는 방법을 보여 줍니다.
필수 구성 요소
이 문서를 완료하려면 다음 리소스가 필요합니다.
- 활성 Azure 구독입니다.
- Azure 구독이 없는 경우, 계정을 만드십시오.
- 온-프레미스 디렉터리 또는 클라우드 전용 디렉터리와 동기화된 구독과 연결된 Microsoft Entra 테넌트입니다.
- 필요한 경우 Microsoft Entra 테넌트를 만들거나 Azure 구독을 계정에 연결하세요.
- Microsoft Entra 테넌트에 사용하도록 설정되고 구성된 Microsoft Entra Domain Services로 관리되는 도메인입니다.
- 필요한 경우 Microsoft Entra Domain Services 관리되는 도메인 을 만들고 구성합니다.
- Domain Services 관리되는 도메인에 가입된 Windows Server 관리 VM입니다.
- Microsoft Entra 테넌트에서 Microsoft Entra DC 관리자 그룹의 구성원인 사용자 계정입니다.
Kerberos 제한 위임 개요
Kerberos 위임을 사용하면 한 계정이 다른 계정을 가장하여 리소스에 액세스할 수 있습니다. 예를 들어 백 엔드 웹 구성 요소에 액세스하는 웹 애플리케이션은 백 엔드 연결을 만들 때 다른 사용자 계정으로 자신을 가장할 수 있습니다. Kerberos 위임은 가장하는 계정이 액세스할 수 있는 리소스를 제한하지 않기 때문에 안전하지 않습니다.
Kerberos 에서 제한된 위임()은 지정된 서버 또는 애플리케이션이 다른 ID를 가장할 때 연결할 수 있는 서비스나 리소스를 제한합니다. 기존 KCD는 서비스에 대한 도메인 계정을 구성하기 위해 도메인 관리자 권한이 필요하며 단일 도메인에서 실행되도록 계정을 제한합니다.
기존 KCD에도 몇 가지 문제가 있습니다. 예를 들어 이전 운영 체제에서는 서비스 관리자가 소유한 리소스 서비스에 위임된 프런트 엔드 서비스를 알 수 있는 유용한 방법이 없었습니다. 리소스 서비스에 위임할 수 있는 프런트 엔드 서비스는 잠재적인 공격 지점이었습니다. 리소스 서비스에 위임하도록 구성된 프런트 엔드 서비스를 호스트한 서버가 손상된 경우 리소스 서비스도 손상될 수 있습니다.
관리되는 도메인에는 도메인 관리자 권한이 없습니다. 따라서 기존 계정 기반 KCD는 관리되는 도메인에서 구성할 수 없습니다. 리소스 기반 KCD를 대신 사용할 수 있으므로 더욱 안전합니다.
리소스 기반 KCD
Windows Server 2012 이상에서는 서비스 관리자에게 해당 서비스에 대해 제한된 위임을 구성할 수 있는 기능을 제공합니다. 이 모델을 리소스 기반 KCD라고 합니다. 이 방법을 사용하면 백 엔드 서비스 관리자가 특정 프런트 엔드 서비스가 KCD를 사용하는 것을 허용하거나 거부할 수 있습니다.
리소스 기반 KCD는 PowerShell을 사용하여 구성됩니다. 가상 계정이 컴퓨터 계정인지 사용자 계정 또는 서비스 계정인지에 따라 Set-ADComputer cmdlet 또는 Set-ADUser cmdlet을 사용합니다.
컴퓨터 계정에 대한 리소스 기반 KCD 구성
이 시나리오에서는 contoso-webapp.aaddscontoso.com컴퓨터에서 실행되는 웹앱이 있다고 가정해 보겠습니다.
웹앱은 도메인 사용자의 컨텍스트에서 contoso-api.aaddscontoso.com 컴퓨터에서 실행되는 웹 API에 액세스해야 합니다.
다음 단계를 완료하여 이 시나리오를 구성합니다.
사용자 지정 OU만듭니다. 관리되는 도메인 내의 사용자에게 이 사용자 지정 OU를 관리할 수 있는 권한을 위임할 수 있습니다.
웹앱을 실행하는 가상 머신과 웹 API를 실행하는 가상 머신을 모두 관리되는도메인에 도메인 가입합니다. 이전 단계의 사용자 지정 OU에서 이러한 컴퓨터 계정을 만듭니다.
메모
웹앱 및 웹 API에 대한 컴퓨터 계정은 리소스 기반 KCD를 구성할 수 있는 권한이 있는 사용자 지정 OU에 있어야 합니다. 기본 제공 Microsoft Entra DC 컴퓨터 컨테이너의 컴퓨터 계정에 대해 리소스 기반 KCD를 구성할 수 없습니다.
마지막으로 Set-ADComputer PowerShell cmdlet을 사용하여 리소스 기반 KCD를 구성합니다.
도메인에 가입된 관리 VM에서 Microsoft Entra DC 관리자 그룹의 구성원인 사용자 계정으로 로그인한 후 다음 cmdlet을 실행합니다. 필요에 따라 사용자 고유의 컴퓨터 이름을 제공합니다.
$ImpersonatingAccount = Get-ADComputer -Identity contoso-webapp.aaddscontoso.com Set-ADComputer contoso-api.aaddscontoso.com -PrincipalsAllowedToDelegateToAccount $ImpersonatingAccount
사용자 계정에 대한 리소스 기반 KCD 구성
이 시나리오에서는 appsvc서비스 계정으로 실행되는 웹 앱이 있다고 가정해 보겠습니다. 웹앱은 도메인 사용자의 컨텍스트에서 backendsvc 서비스 계정으로 실행되는 웹 API에 액세스해야 합니다. 다음 단계를 완료하여 이 시나리오를 구성합니다.
사용자 지정 OU만듭니다. 관리되는 도메인 내의 사용자에게 이 사용자 지정 OU를 관리할 수 있는 권한을 위임할 수 있습니다.
관리되는 도메인에 백 엔드 웹 API/리소스를 실행하는 가상 머신 도메인에 가입합니다. 사용자 지정 OU 내에서 컴퓨터 계정을 만듭니다.
사용자 지정 OU 내에서 웹앱을 실행하는 데 사용되는 서비스 계정(예: appsvc )을 만듭니다.
메모
다시 말하지만, 웹 API VM의 컴퓨터 계정과 웹앱에 대한 서비스 계정은 리소스 기반 KCD를 구성할 수 있는 권한이 있는 사용자 지정 OU에 있어야 합니다. Microsoft Entra DC 컴퓨터 기본 제공 계정에 대해 리소스 기반 KCD를 구성하거나 Microsoft Entra DC 사용자 컨테이너를 수 없습니다. 즉, Microsoft Entra ID에서 동기화된 사용자 계정을 사용하여 리소스 기반 KCD를 설정할 수 없습니다. Domain Services에서 특별히 만든 서비스 계정을 만들고 사용해야 합니다.
마지막으로 Set-ADUser PowerShell cmdlet을 사용하여 리소스 기반 KCD를 구성합니다.
도메인에 가입된 관리 VM에서 Microsoft Entra DC 관리자 그룹의 구성원인 사용자 계정으로 로그인한 후 다음 cmdlet을 실행합니다. 필요에 따라 사용자 고유의 서비스 이름을 제공합니다.
$ImpersonatingAccount = Get-ADUser -Identity appsvc Set-ADUser backendsvc -PrincipalsAllowedToDelegateToAccount $ImpersonatingAccount
다음 단계
Active Directory Domain Services에서 위임이 작동하는 방식에 대한 자세한 내용은 Kerberos 제한 위임 개요참조하세요.