Dela via


Hantera grupphanterade tjänstkonton

I den här artikeln får du lära dig hur du aktiverar och använder grupphanterade tjänstkonton (gMSA) i Windows Server.

Autentiseringsprotokoll som stöder ömsesidig autentisering, till exempel Kerberos, kan inte användas om inte alla instanser av tjänsterna använder samma huvudnamn. Till exempel när en klientdator ansluter till en tjänst som använder belastningsutjämning eller en annan metod där alla servrar verkar vara samma tjänst för klienten. Det innebär att varje tjänst måste använda samma lösenord eller nycklar för att bevisa sin identitet. Grupphanterade tjänstkonton är en typ av konto som kan användas med flera servrar. En gMSA är ett domänkonto som kan användas för att köra tjänster på flera servrar utan att behöva hantera lösenordet. GMSA tillhandahåller automatisk lösenordshantering och förenklad hantering av tjänstens huvudnamn (SPN), inklusive delegering av hantering till andra administratörer.

Note

Redundanskluster stöder inte gMSAs. Tjänster som körs ovanpå klustertjänsten kan dock använda en gMSA eller en sMSA om de är en Windows-tjänst, en apppool, en schemalagd uppgift eller har inbyggt stöd för gMSA eller sMSA.

Tjänster kan välja det huvudnamn som ska användas. Varje huvudtyp stöder olika tjänster och har olika begränsningar.

Principals Tjänster som stöds Lösenordshantering
Datorkonto för Windows-system Begränsad till en domänansluten server Datorn hanterar
Datorkonto utan Windows-system Alla domänanslutna servrar None
Virtuellt konto Begränsad till en server Datorn hanterar
Windows fristående hanterat tjänstkonto Begränsad till en domänansluten server Datorn hanterar
Användarkonto Alla domänanslutna servrar None
Grupphanterat tjänstkonto Alla domänanslutna Windows Server-servrar Domänkontrollanten hanterar och värden hämtar

Ett Windows-datorkonto, ett fristående Hanterat Windows-tjänstkonto (sMSA) eller virtuella konton kan inte delas mellan flera system. När du använder virtuella konton är identiteten också lokal för datorn och identifieras inte av domänen. Om du konfigurerar ett konto för att dela tjänster på serverfarmar, måste du välja ett användarkonto eller ett datorkonto utöver ett Windows-system. Hur som helst har dessa konton inte funktionen för lösenordshantering med en kontrollpunkt. Utan lösenordshantering måste varje organisation uppdatera nycklar för tjänsten i Active Directory (AD) och distribuera dessa nycklar till alla instanser av dessa tjänster.

Med Windows Server behöver tjänster och tjänstadministratörer inte hantera lösenordssynkronisering mellan tjänstinstanser när du använder gMSA. Du skapar gMSA i AD och konfigurerar sedan tjänsten som stöder hanterade tjänstkonton. Användningen av gMSA är begränsad till alla datorer som kan använda Lightweight Directory Access Protocol (LDAP) för att hämta gMSA:s autentiseringsuppgifter. Du kan skapa en gMSA med hjälp av de New-ADServiceAccount cmdletar som ingår i AD-modulen. Följande tjänster stöder konfigurationen av tjänstidentiteten på värddatorn.

  • Samma API:er som sMSA, så produkter som stöder sMSA stöder gMSA

  • Tjänster som använder Service Control Manager för att konfigurera inloggningsidentitet

  • Tjänster som använder IIS-hanteraren (Internet Information Services) för programpooler för att konfigurera identitet

  • Uppgifter som använder Aktivitetsschemaläggaren.

Prerequisites

För att hantera gMSA:er måste enheten uppfylla följande krav:

Tip

Om du vill styra vilka värdar eller tjänster som kan använda en gMSA lägger du till deras datorkonton i en utsedd säkerhetsgrupp (antingen ny eller befintlig) och tilldelar den här gruppen nödvändiga behörigheter. På samma sätt kan du använda en säkerhetsgrupp för att hantera åtkomst för tjänster som körs under gMSAs, vilket säkerställer att gruppen har alla nödvändiga behörigheter för tjänståtgärd och resursåtkomst.

För att Kerberos-autentisering ska fungera med tjänster med hjälp av gMSA:er krävs följande:

  • Kontrollera att SPN:erna är korrekt registrerade för varje tjänst med hjälp av en gMSA. På så sätt kan Kerberos identifiera och autentisera tjänsten.

  • Se till att DNS-poster har konfigurerats korrekt för namnmatchning, vilket Kerberos förlitar sig på för att hitta domäntjänster.

  • Se till att brandväggar och nätverksprinciper tillåter Kerberos-trafik och nödvändig tjänstkommunikation.

  • För inställningarna för Kerberos-biljettens livslängd konfigurerar du förfallo- och förnyelseprinciperna för biljetten i enlighet med dina säkerhets- och driftkrav.

  • Alla system som ingår i autentiseringsprocessen måste ha synkroniserade klockor. Kerberos är känslig för tidskonfiguration och avvikelser kan orsaka autentiseringsfel.

Om du hanterar AD från en dator som inte är en domänkontrollant installerar du RSAT (Remote Server Administration Tools) för att få åtkomst till nödvändiga hanteringsfunktioner. RSAT tillhandahåller AD-modulen för PowerShell. När du har installerat RSAT öppnar du PowerShell som administratör och kör Import-Module ActiveDirectory för att aktivera AD-hanterings-cmdletar. Detta gör det möjligt för administratörer att fjärrhantera AD och på ett säkert sätt, vilket minimerar belastningen på domänkontrollanter.

Skapa en gMSA

Om du vill skapa en gMSA med PowerShell följer du dessa steg i ett upphöjt PowerShell-fönster:

Important

gMSA-kontonamn måste vara unika inom en skogsnivå och inte bara en domän. Det går inte att skapa ett gMSA-konto med ett duplicerat namn, även i olika domäner.

  1. Skapa KDS-rotnyckeln, om den inte finns, genom att följa anvisningarna i Skapa KDS-rotnyckeln för nyckeldistributionstjänster. Om det redan finns en nyckel hoppar du över det här steget.

  2. Kör följande kommando för att skapa en gMSA. Ersätt <gMSAName> med önskat gMSA-namn och <domain> med domänens namn. Ersätt <SecurityGroup> med namnet på säkerhetsgruppen eller datorkonton som ska ha åtkomst för att hämta gMSA:s lösenord.

    New-ADServiceAccount -Name <gMSAName> -DNSHostName <gMSAName>.<domain> -PrincipalsAllowedToRetrieveManagedPassword <SecurityGroup>
    

    Om du bara vill skapa en gMSA för utgående autentisering kör du följande kommando. Ersätt <Days> med ett numeriskt värde. Om ett värde inte anges, är standardinställningen 30 dagar.

    New-ADServiceAccount -Name <gMSAName> -DNSHostName <gMSAName>.<domain> -RestrictToOutboundAuthenticationOnly -ManagedPasswordIntervalInDays <Days> -PrincipalsAllowedToRetrieveManagedPassword <SecurityGroup>
    

    Important

    Lösenordsändringsintervallet kan bara anges när du skapar det. Om du behöver ändra intervallet måste du skapa en ny gMSA och ange den vid skapandetillfället.

  3. Kör följande kommando för att kontrollera om målenheten har åtkomst till att hämta gMSA-lösenordet.

    Test-ADServiceAccount -Identity <gMSAName>
    

Medlemskap i lämplig säkerhetsgrupp eller med nödvändiga delegerade behörigheter för att skapa msDS-GroupManagedServiceAccount objekt krävs för att slutföra den här proceduren. Även om medlemmar i kontooperatörer kan hantera vissa användar- och gruppobjekt i AD, har de inte standardrättigheter för att skapa gMSA:er om inte dessa behörigheter delegeras till dem. Detaljerad information om hur du använder lämpliga konton och gruppmedlemskap finns i Active Directory-säkerhetsgrupper.

Du kan också uppdatera gMSA-egenskaperna med hjälp av cmdleten Set-ADServiceAccount . Om du till exempel vill uppdatera datorns visningsnamn kör du följande kommando som <gMSAName> ersätter och <NewDisplayName> med dina värden:

Set-ADServiceAccount -Identity "<gMSAName>" -DisplayName "<NewDisplayName>"

Detaljerad information om hur du anger andra egenskaper för gMSA finns i Set-ADServiceAccount.

Verifiera ändringar i en gMSA

När du har gjort ändringar i en gMSA kan du kontrollera om gMSA har uppdaterats korrekt. Dessa ändringar omfattar att lägga till, ta bort och avinstallera en gMSA. Du kan också utföra det här steget när som helst när uppdateringar görs av gMSA-egenskaperna.

Kör följande kommando och <gMSAName> ersätt med namnet på den gMSA som du skapade:

Get-ADServiceAccount -Identity "<gMSAName>" | Select-Object *

Lägg till värdar i en säkerhetsgrupp

Note

  • Gruppcentrerad hantering (Add-ADGroupMember / Remove-ADGroupMember): Använd dessa cmdletar när du vill hantera medlemskap i en viss grupp. De passar bäst för att lägga till eller ta bort flera användare, datorer eller andra objekt till eller från en enda grupp effektivt.

  • Huvudfokuserad hantering (Add-ADPrincipalGroupMembership / Remove-ADPrincipalGroupMembership): Välj dessa cmdletar när målet är att hantera en specifik användares eller dators medlemskap i flera grupper. De gör att du kan lägga till eller ta bort ett huvudnamn från flera grupper i en enda åtgärd, vilket gör det enklare att uppdatera grupptillhörigheter för enskilda konton.

Om du använder säkerhetsgrupper för att hantera medlemsvärdar, lägger du till datorkontot för den nya datorvärden i säkerhetsgruppen som innehåller gMSA:s medlemsvärdar. Du kan göra detta med någon av följande metoder:

Information om hur du använder snapin-modulen Active Directory Användare och datorer (ADUC) finns i Lägga till ett datorkonto i en grupp och Hantera användarkonton i Active Directory Användare och datorer.

Om du använder datorkonton letar du upp de befintliga kontona och lägger sedan till det nya datorkontot.

Ta bort värdar från en säkerhetsgrupp

Information om hur du använder snapin-modulen ADUC finns i Ta bort ett datorkonto och Ta bort ett användarkonto.

Avinstallera en gMSA från systemet

Du kan inte avinstallera gMSAs i ADUC, men du kan ta bort en gMSA manuellt genom att hitta den i containern Hanterade tjänstkonton och ta bort den som andra AD-objekt. Tänk dock på att detta inte utför samma rensningsåtgärder som Uninstall-ADServiceAccount i PowerShell.

Om du vill avinstallera en gMSA öppnar du ett upphöjt PowerShell-fönster och följer dessa steg.

  1. Om du vill ta bort en enda gMSA från din miljö kör du följande kommando som <gMSAName> ersätter med ditt värde:

    Uninstall-ADServiceAccount -Identity <gMSAName>
    
  2. Om du vill ta bort flera gMSA:er från din miljö kör du följande kommando som <gMSA#$> ersätter med dina värden:

    $gMSANames = @("gMSA1$", "gMSA2$", "gMSA3$")
    
    foreach ($gMSAs in $gMSANames) {
      Uninstall-ADServiceAccount -Identity $gMSAs
    }
    

Mer information om cmdleten finns i Uninstall-ADServiceAccountUninstall-ADServiceAccount.

Se även