Konfigurowanie ograniczonego delegowania protokołu Kerberos (KCD) w usługach Microsoft Entra Domain Services

W miarę uruchamiania aplikacji może być konieczne uzyskanie dostępu do zasobów przez tych aplikacji w kontekście innego użytkownika. usługa domena usługi Active Directory Services (AD DS) obsługuje mechanizm nazywany Delegowanie protokołu Kerberos, które włącza ten przypadek użycia. Delegowanie ograniczone protokołu Kerberos (KCD) opiera się na tym mechanizmie, aby zdefiniować określone zasoby, do których można uzyskać dostęp w kontekście użytkownika.

Domeny zarządzane usług Microsoft Entra Domain Services są bezpieczniej blokowane niż tradycyjne lokalne środowiska usług AD DS, dlatego używaj bezpieczniejszego klucza KCD opartego na zasobach.

W tym artykule przedstawiono sposób konfigurowania ograniczonego delegowania Kerberos opartego na zasobach w domenie zarządzanej usług Domain Services.

Wymagania wstępne

Do ukończenia tego artykułu potrzebne są następujące zasoby:

Omówienie ograniczonego delegowania Kerberos

Delegowanie protokołu Kerberos umożliwia jednemu kontu personifikację innego konta w celu uzyskania dostępu do zasobów. Na przykład aplikacja internetowa, która uzyskuje dostęp do składnika internetowego zaplecza, może personifikować się jako inne konto użytkownika, gdy nawiązuje połączenie zaplecza. Delegowanie protokołu Kerberos jest niezabezpieczone, ponieważ nie ogranicza zasobów, do których może uzyskiwać dostęp personifikujące konto.

Ograniczone delegowanie protokołu Kerberos (KCD) ogranicza usługi lub zasoby, które określony serwer lub aplikacja może nawiązać połączenie podczas personifikacji innej tożsamości. Tradycyjne KCD wymaga uprawnień administratora domeny do skonfigurowania konta domeny dla usługi i ogranicza konto do uruchamiania w jednej domenie.

Tradycyjne KCD ma również kilka problemów. Na przykład we wcześniejszych systemach operacyjnych administrator usługi nie miał przydatnego sposobu poznania usług frontonu delegowanych do usług zasobów, które należą do nich. Każda usługa frontonu, która mogła delegować do usługi zasobów, była potencjalnym punktem ataku. Jeśli naruszono bezpieczeństwo serwerów hostujących usługę frontonu skonfigurowaną do delegowania usług zasobów, usługi zasobów również mogą zostać naruszone.

W domenie zarządzanej nie masz uprawnień administratora domeny. W związku z tym tradycyjne KCD oparte na koncie nie można skonfigurować w domenie zarządzanej. Zamiast tego można użyć KCD opartego na zasobach, co jest również bezpieczniejsze.

KCD oparte na zasobach

System Windows Server 2012 lub nowszy udostępnia administratorom usług możliwość konfigurowania ograniczonego delegowania dla swojej usługi. Ten model jest znany jako KCD oparty na zasobach. Dzięki temu podejściu administrator usługi zaplecza może zezwalać na korzystanie z KCD lub odmawiać określonych usług frontonu.

Usługa KCD oparta na zasobach jest skonfigurowana przy użyciu programu PowerShell. Polecenia cmdlet Set-ADComputer lub Set-ADUser są używane w zależności od tego, czy personifikujące konto jest kontem komputera, czy kontem użytkownika/kontem usługi.

Konfigurowanie klucza KCD opartego na zasobach dla konta komputera

W tym scenariuszu załóżmy, że masz aplikację internetową działającą na komputerze o nazwie contoso-webapp.aaddscontoso.com.

Aplikacja internetowa musi uzyskać dostęp do internetowego interfejsu API działającego na komputerze o nazwie contoso-api.aaddscontoso.com w kontekście użytkowników domeny.

Wykonaj następujące kroki, aby skonfigurować ten scenariusz:

  1. Utwórz niestandardową jednostkę organizacyjną. Możesz delegować uprawnienia do zarządzania tą niestandardową jednostki organizacyjnej do użytkowników w domenie zarządzanej.

  2. Przyłącz maszyny wirtualne do domeny, zarówno te, które uruchamiają aplikację internetową, jak i te, które uruchamiają internetowy interfejs API, do domeny zarządzanej. Utwórz te konta komputerów w niestandardowej jednostki organizacyjnej z poprzedniego kroku.

    Uwaga

    Konta komputerów dla aplikacji internetowej i internetowego interfejsu API muszą znajdować się w niestandardowej jednostki organizacyjnej, w której masz uprawnienia do konfigurowania KCD opartego na zasobach. Nie można skonfigurować klucza KCD opartego na zasobach dla konta komputera w wbudowanym kontenerze Microsoft Entra DC Computers .

  3. Na koniec skonfiguruj oparte na zasobach KCD przy użyciu polecenia cmdlet Set-ADComputer PowerShell.

    Z maszyny wirtualnej zarządzania przyłączonej do domeny i zalogowanej jako konto użytkownika, które jest członkiem grupy administratorów microsoft Entra DC, uruchom następujące polecenia cmdlet. Podaj własne nazwy komputerów zgodnie z potrzebami:

    $ImpersonatingAccount = Get-ADComputer -Identity contoso-webapp.aaddscontoso.com
    Set-ADComputer contoso-api.aaddscontoso.com -PrincipalsAllowedToDelegateToAccount $ImpersonatingAccount
    

Konfigurowanie klucza KCD opartego na zasobach dla konta użytkownika

W tym scenariuszu załóżmy, że masz aplikację internetową, która działa jako konto usługi o nazwie appsvc. Aplikacja internetowa musi uzyskać dostęp do internetowego interfejsu API, który działa jako konto usługi o nazwie backendsvc w kontekście użytkowników domeny. Wykonaj następujące kroki, aby skonfigurować ten scenariusz:

  1. Utwórz niestandardową jednostkę organizacyjną. Możesz delegować uprawnienia do zarządzania tą niestandardową jednostki organizacyjnej do użytkowników w domenie zarządzanej.

  2. Przyłącz do domeny maszyny wirtualne, które uruchamiają internetowy interfejs API/zasób zaplecza do domeny zarządzanej. Utwórz konto komputera w ramach niestandardowej jednostki organizacyjnej.

  3. Utwórz konto usługi (na przykład appsvc) używane do uruchamiania aplikacji internetowej w ramach niestandardowej jednostki organizacyjnej.

    Uwaga

    Ponownie konto komputera dla maszyny wirtualnej internetowego interfejsu API i konto usługi dla aplikacji internetowej musi znajdować się w niestandardowej jednostki organizacyjnej, w której masz uprawnienia do konfigurowania KCD opartego na zasobach. Nie można skonfigurować kontrolera KCD opartego na zasobach dla kont w wbudowanych komputerach microsoft Entra DC lub kontenerach Microsoft Entra DC Users. Oznacza to również, że nie można używać kont użytkowników zsynchronizowanych z identyfikatorem Entra firmy Microsoft w celu skonfigurowania KCD opartego na zasobach. Musisz utworzyć i używać kont usług utworzonych specjalnie w usługach Domain Services.

  4. Na koniec skonfiguruj opartą na zasobach KCD przy użyciu polecenia cmdlet Set-ADUser programu PowerShell.

    Z maszyny wirtualnej zarządzania przyłączonej do domeny i zalogowanej jako konto użytkownika, które jest członkiem grupy administratorów microsoft Entra DC, uruchom następujące polecenia cmdlet. Podaj własne nazwy usług zgodnie z potrzebami:

    $ImpersonatingAccount = Get-ADUser -Identity appsvc
    Set-ADUser backendsvc -PrincipalsAllowedToDelegateToAccount $ImpersonatingAccount
    

Następne kroki

Aby dowiedzieć się więcej na temat działania delegowania w usługach domena usługi Active Directory, zobacz Omówienie ograniczonego delegowania protokołu Kerberos.