Uruchamianie kontenera z użyciem gMSA
Dotyczy: Windows Server 2025, Windows Server 2022, Windows Server 2019
Aby uruchomić kontener przy użyciu konta usługi zarządzanej przez grupę (gMSA), podaj plik specyfikacji poświadczeń do parametru --security-opt
docker run:
docker run --security-opt "credentialspec=file://contoso_webapp01.json" --hostname webapp01 -it mcr.microsoft.com/windows/server:ltsc2022 powershell
Ważny
W systemie Windows Server 2016 w wersjach 1709 i 1803 nazwa hosta kontenera musi być zgodna z krótką nazwą gMSA.
W poprzednim przykładzie nazwa konta SAM usługi gMSA to webapp01, więc nazwa hosta kontenera nosi również nazwę webapp01.
W systemie Windows Server 2019 lub nowszym pole nazwy hosta nie jest wymagane, ale kontener nadal będzie identyfikować się za pomocą nazwy gMSA zamiast nazwy hosta, nawet jeśli jawnie podasz inną.
Aby sprawdzić, czy gMSA działa poprawnie, uruchom następujące polecenie cmdlet w kontenerze:
# Replace contoso.com with your own domain
PS C:\> nltest /sc_verify:contoso.com
Flags: b0 HAS_IP HAS_TIMESERV
Trusted DC Name \\dc01.contoso.com
Trusted DC Connection Status Status = 0 0x0 NERR_Success
Trust Verification Status = 0 0x0 NERR_Success
The command completed successfully
Jeśli status zaufanego połączenia kontrolera domeny i status weryfikacji zaufania nie są NERR_Success
, postępuj zgodnie z instrukcjami rozwiązywania problemów , aby rozwiązać problem.
Tożsamość gMSA można zweryfikować z poziomu kontenera, uruchamiając następujące polecenie i sprawdzając nazwę klienta:
PS C:\> klist get webapp01
Current LogonId is 0:0xaa79ef8
A ticket to krbtgt has been retrieved successfully.
Cached Tickets: (2)
#0> Client: webapp01$ @ CONTOSO.COM
Server: krbtgt/webapp01 @ CONTOSO.COM
KerbTicket Encryption Type: AES-256-CTS-HMAC-SHA1-96
Ticket Flags 0x40a10000 -> forwardable renewable pre_authent name_canonicalize
Start Time: 3/21/2019 4:17:53 (local)
End Time: 3/21/2019 14:17:53 (local)
Renew Time: 3/28/2019 4:17:42 (local)
Session Key Type: AES-256-CTS-HMAC-SHA1-96
Cache Flags: 0
Kdc Called: dc01.contoso.com
[...]
Aby otworzyć program PowerShell lub inną aplikację konsolową jako konto gMSA, możesz poprosić kontener o uruchomienie na koncie usługi sieciowej zamiast normalnego konta ContainerAdministrator (lub ContainerUser dla serwera NanoServer):
# NOTE: you can only run as Network Service or SYSTEM on Windows Server 1709 and later
docker run --security-opt "credentialspec=file://contoso_webapp01.json" --hostname webapp01 --user "NT AUTHORITY\NETWORK SERVICE" -it mcr.microsoft.com/windows/servercore:ltsc2019 powershell
Gdy działasz jako Usługa Sieciowa, możesz przetestować uwierzytelnianie sieciowe jako gMSA, próbując połączyć się z folderem SYSVOL na kontrolerze domeny.
# This command should succeed if you're successfully running as the gMSA
PS C:\> dir \\contoso.com\SYSVOL
Directory: \\contoso.com\sysvol
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----l 2/27/2019 8:09 PM contoso.com
Powiązana zawartość
Oprócz uruchamiania kontenerów można również używać gMSAs do:
- Konfigurowanie aplikacji
- kontenery Orchestrate
- Dzięki gMSA w Azure Kubernetes Service
Jeśli podczas instalacji wystąpią jakiekolwiek problemy, zapoznaj się z naszym przewodnikiem rozwiązywania problemów , aby uzyskać możliwe rozwiązania.