Jak skonfigurować uwierzytelnianie systemu Windows dla usługi Microsoft Entra ID przy użyciu przepływu opartego na przychodzącej relacji zaufania
W tym artykule opisano sposób implementowania przychodzącego przepływu uwierzytelniania opartego na zaufaniu w celu umożliwienia klientom przyłączonym do usługi Active Directory (AD) z systemem Windows 10, Windows Server 2012 lub nowszymi wersjami systemu Windows w celu uwierzytelniania w usłudze Azure SQL Managed Instance przy użyciu uwierzytelniania systemu Windows.
Ten artykuł zawiera również kroki rotacji klucza Kerberos dla konta usługi w usłudze Microsoft Entra ID (dawniej Azure Active Directory) i obiektu zaufanej domeny oraz kroki usuwania zaufanego obiektu domeny i wszystkich ustawień protokołu Kerberos, jeśli to konieczne.
Włączenie przychodzącego przepływu uwierzytelniania opartego na zaufaniu jest jednym krokiem konfigurowania uwierzytelniania systemu Windows dla usługi Azure SQL Managed Instance przy użyciu identyfikatora Microsoft Entra ID i protokołu Kerberos. Nowoczesny przepływ interaktywny jest dostępny dla obsługujących klientów z systemem Windows 10 20H1, Windows Server 2022 lub nowszą wersją systemu Windows.
Uwaga
Microsoft Entra ID był wcześniej znany jako Azure Active Directory (Azure AD).
Uprawnienia
Aby wykonać kroki opisane w tym artykule, potrzebne są następujące elementy:
- Nazwa użytkownika i hasło administratora lokalna usługa Active Directory.
- Nazwa użytkownika i hasło konta administratora globalnego firmy Microsoft Entra.
Wymagania wstępne
Aby zaimplementować przychodzący przepływ uwierzytelniania opartego na zaufaniu, najpierw upewnij się, że zostały spełnione następujące wymagania wstępne:
Wymaganie wstępne | Opis |
---|---|
Klienci muszą mieć system Windows 10, Windows Server 2012 lub nowszą wersję systemu Windows. | |
Klienci muszą być przyłączeni do usługi AD. Domena musi mieć poziom funkcjonalności systemu Windows Server 2012 lub wyższy. | Możesz określić, czy klient jest przyłączony do usługi AD, uruchamiając polecenie dsregcmd: dsregcmd.exe /status |
Moduł zarządzania uwierzytelnianiem hybrydowym usługi Azure AD. | Ten moduł programu PowerShell udostępnia funkcje zarządzania na potrzeby konfiguracji lokalnej. |
Dzierżawa platformy Azure. | |
Subskrypcja platformy Azure w ramach tej samej dzierżawy usługi Microsoft Entra, której planujesz używać do uwierzytelniania. | |
Zainstalowano program Microsoft Entra Connect . | Środowiska hybrydowe z tożsamościami istniejącymi zarówno w usłudze Microsoft Entra ID, jak i w usłudze AD. |
Tworzenie i konfigurowanie obiektu zaufanej domeny protokołu Kerberos firmy Microsoft
Aby utworzyć i skonfigurować zaufany obiekt domeny protokołu Kerberos firmy Microsoft, zainstaluj moduł Zarządzania uwierzytelnianiem hybrydowym usługi Azure AD programu PowerShell.
Następnie użyjesz modułu Zarządzania uwierzytelnianiem hybrydowym usługi Azure AD programu PowerShell, aby skonfigurować zaufany obiekt domeny w lokalnej domenie usługi AD i zarejestrować informacje o zaufaniu przy użyciu identyfikatora entra firmy Microsoft. Spowoduje to utworzenie relacji zaufania powiązanej z lokalną usługą AD, która umożliwia usłudze Microsoft Entra ID zaufanie do lokalnej usługi AD.
Konfigurowanie obiektu zaufanej domeny
Aby skonfigurować zaufany obiekt domeny, najpierw zainstaluj moduł PowerShell zarządzania uwierzytelnianiem hybrydowym usługi Azure AD.
Instalowanie modułu Zarządzania uwierzytelnianiem hybrydowym usługi Azure AD w programie PowerShell
Uruchom sesję programu Windows PowerShell z opcją Uruchom jako administrator .
Zainstaluj moduł Zarządzania uwierzytelnianiem hybrydowym usługi Azure AD programu PowerShell przy użyciu następującego skryptu. Skrypt:
- Włącza protokół TLS 1.2 na potrzeby komunikacji.
- Instaluje dostawcę pakietów NuGet.
- Rejestruje repozytorium PSGallery.
- Instaluje moduł PowerShellGet.
- Instaluje moduł PowerShell zarządzania uwierzytelnianiem hybrydowym usługi Azure AD.
- Program PowerShell do zarządzania uwierzytelnianiem hybrydowym usługi Azure AD używa modułu AzureADPreview, który zapewnia zaawansowaną funkcję zarządzania entra firmy Microsoft.
- Aby chronić przed niepotrzebnymi konfliktami instalacji z modułem programu PowerShell usługi Azure AD, to polecenie zawiera flagę opcji –AllowClobber.
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
Install-PackageProvider -Name NuGet -Force
if (@(Get-PSRepository | Where-Object { $_.Name -eq "PSGallery" }).Count -eq -1) {
Register-PSRepository -Default
Set-PSRepository -Name "PSGallery" -InstallationPolicy Trusted
}
Install-Module -Name PowerShellGet -Force
Install-Module -Name AzureADHybridAuthenticationManagement -AllowClobber
Tworzenie obiektu zaufanej domeny
Uruchom sesję programu Windows PowerShell z opcją Uruchom jako administrator .
Ustaw typowe parametry. Przed uruchomieniem skryptu dostosuj następujący skrypt.
$domain
Ustaw parametr na nazwę domeny lokalna usługa Active Directory.- Po wyświetleniu monitu przez
Get-Credential
program wprowadź nazwę użytkownika i hasło administratora lokalna usługa Active Directory. $cloudUserName
Ustaw parametr na nazwę użytkownika uprzywilejowanego konta administratora globalnego dla dostępu do chmury Firmy Microsoft Entra.
Uwaga
Jeśli chcesz użyć bieżącego konta logowania systemu Windows dla lokalna usługa Active Directory dostępu, możesz pominąć krok, w którym poświadczenia są przypisane do parametru
$domainCred
. Jeśli to podejście zostanie uwzględnione, nie uwzględnij parametru-DomainCredential
w poleceniach programu PowerShell, wykonując ten krok.$domain = "your on-premesis domain name, for example contoso.com" $domainCred = Get-Credential $cloudUserName = "Azure AD user principal name, for example admin@contoso.onmicrosoft.com"
Sprawdź bieżące ustawienia domeny protokołu Kerberos.
Uruchom następujące polecenie, aby sprawdzić bieżące ustawienia protokołu Kerberos w domenie:
Get-AzureAdKerberosServer -Domain $domain ` -DomainCredential $domainCred ` -UserPrincipalName $cloudUserName
Jeśli jest to pierwsze wywołanie dowolnego polecenia protokołu Kerberos firmy Microsoft Entra, zostanie wyświetlony monit o dostęp do chmury Firmy Microsoft Entra.
- Wprowadź hasło dla konta administratora globalnego firmy Microsoft Entra.
- Jeśli Twoja organizacja używa innych nowoczesnych metod uwierzytelniania, takich jak uwierzytelnianie wieloskładnikowe firmy Microsoft lub karta inteligentna, postępuj zgodnie z instrukcjami, zgodnie z żądaniem logowania.
Jeśli po raz pierwszy konfigurujesz ustawienia protokołu Kerberos firmy Microsoft Entra, polecenie cmdlet Get-AzureAdKerberosServer wyświetla puste informacje, jak w następujących przykładowych danych wyjściowych:
ID : UserAccount : ComputerAccount : DisplayName : DomainDnsName : KeyVersion : KeyUpdatedOn : KeyUpdatedFrom : CloudDisplayName : CloudDomainDnsName : CloudId : CloudKeyVersion : CloudKeyUpdatedOn : CloudTrustDisplay :
Jeśli domena obsługuje już uwierzytelnianie FIDO,
Get-AzureAdKerberosServer
polecenie cmdlet wyświetla informacje o koncie usługi Microsoft Entra, jak w poniższych przykładowych danych wyjściowych. PoleCloudTrustDisplay
zwraca pustą wartość.ID : 25614 UserAccount : CN=krbtgt-AzureAD, CN=Users, DC=aadsqlmi, DC=net ComputerAccount : CN=AzureADKerberos, OU=Domain Controllers, DC=aadsqlmi, DC=net DisplayName : krbtgt_25614 DomainDnsName : aadsqlmi.net KeyVersion : 53325 KeyUpdatedOn : 2/24/2022 9:03:15 AM KeyUpdatedFrom : ds-aad-auth-dem.aadsqlmi.net CloudDisplayName : krbtgt_25614 CloudDomainDnsName : aadsqlmi.net CloudId : 25614 CloudKeyVersion : 53325 CloudKeyUpdatedOn : 2/24/2022 9:03:15 AM CloudTrustDisplay :
Dodaj zaufany obiekt domeny.
Uruchom polecenie cmdlet Set-AzureAdKerberosServer programu PowerShell, aby dodać zaufany obiekt domeny. Pamiętaj, aby uwzględnić
-SetupCloudTrust
parametr. Jeśli nie ma konta usługi Microsoft Entra, to polecenie tworzy nowe konto usługi Microsoft Entra. To polecenie tworzy żądany obiekt zaufanej domeny tylko wtedy, gdy istnieje konto usługi Microsoft Entra.Set-AzureADKerberosServer -Domain $domain -UserPrincipalName $cloudUserName -DomainCredential $domainCred -SetupCloudTrust
Uwaga
Aby uniknąć błędu LsaCreateTrustedDomainEx w wielu lasach domeny, 0x549 podczas uruchamiania polecenia w domenie podrzędnej:
- Uruchom polecenie w domenie głównej (uwzględnij
-SetupCloudTrust
parametr). - Uruchom to samo polecenie w domenie podrzędnej bez parametru
-SetupCloudTrust
.
Po utworzeniu obiektu zaufanej domeny można sprawdzić zaktualizowane ustawienia protokołu Kerberos przy użyciu
Get-AzureAdKerberosServer
polecenia cmdlet programu PowerShell, jak pokazano w poprzednim kroku.Set-AzureAdKerberosServer
Jeśli polecenie cmdlet zostało pomyślnie uruchomione z parametrem-SetupCloudTrust
,CloudTrustDisplay
pole powinno teraz zwrócićMicrosoft.AzureAD.Kdc.Service.TrustDisplay
wartość , jak w następujących przykładowych danych wyjściowych:ID : 25614 UserAccount : CN=krbtgt-AzureAD, CN=Users, DC=aadsqlmi, DC=net ComputerAccount : CN=AzureADKerberos, OU=Domain Controllers, DC=aadsqlmi, DC=net DisplayName : krbtgt_25614 DomainDnsName : aadsqlmi.net KeyVersion : 53325 KeyUpdatedOn : 2/24/2022 9:03:15 AM KeyUpdatedFrom : ds-aad-auth-dem.aadsqlmi.net CloudDisplayName : krbtgt_25614 CloudDomainDnsName : aadsqlmi.net CloudId : 25614 CloudKeyVersion : 53325 CloudKeyUpdatedOn : 2/24/2022 9:03:15 AM CloudTrustDisplay : Microsoft.AzureAD.Kdc.Service.TrustDisplay
Uwaga
Suwerenne chmury platformy Azure wymagają ustawienia
TopLevelNames
właściwości, która jest domyślnie ustawionawindows.net
. Wdrożenia suwerennej chmury platformy Azure usługi SQL Managed Instance używają innej nazwy domeny najwyższego poziomu, takiej jakusgovcloudapi.net
azure US Government. Ustaw zaufany obiekt domeny na tę nazwę domeny najwyższego poziomu przy użyciu następującego polecenia programu PowerShell:Set-AzureADKerberosServer -Domain $domain -DomainCredential $domainCred -CloudCredential $cloudCred -SetupCloudTrust -TopLevelNames "usgovcloudapi.net,windows.net"
. Możesz sprawdzić to ustawienie za pomocą następującego polecenia programu PowerShell:Get-AzureAdKerberosServer -Domain $domain -DomainCredential $domainCred -UserPrincipalName $cloudUserName | Select-Object -ExpandProperty CloudTrustDisplay
.- Uruchom polecenie w domenie głównej (uwzględnij
Konfigurowanie obiektu zasad grupy (GPO)
Zidentyfikuj identyfikator dzierżawy firmy Microsoft Entra.
Wdróż następujące ustawienie zasad grupy na maszynach klienckich przy użyciu przychodzącego przepływu opartego na zaufaniu:
Edytuj ustawienia zasad Szablony administracyjne\System\Kerberos\Określ serwery proxy usługi KDC dla klientów protokołu Kerberos.
Wybierz pozycję Włączone.
W obszarze Opcje wybierz pozycję Pokaż.... Spowoduje to otwarcie okna dialogowego Pokaż zawartość.
Zdefiniuj ustawienia serwerów proxy usługi KDC przy użyciu mapowań w następujący sposób. Zastąp identyfikator dzierżawy entra firmy Microsoft symbolem zastępczym
your_Azure_AD_tenant_id
. Zanotuj spację poniżejhttps
i przed zamknięciem/
w mapowaniu wartości.Nazwa wartości Wartość KERBEROS.MICROSOFTONLINE.COM <https login.microsoftonline.com:443: your_Azure_AD_tenant_id
/kerberos />Wybierz przycisk OK , aby zamknąć okno dialogowe "Pokaż zawartość".
Wybierz pozycję Zastosuj w oknie dialogowym "Określ serwery proxy centrum dystrybucji kluczy dla klientów kerberos".
Obracanie klucza Kerberos
Można okresowo obracać klucz Kerberos dla utworzonego konta usługi Microsoft Entra i zaufanego obiektu domeny na potrzeby zarządzania.
Set-AzureAdKerberosServer -Domain $domain `
-DomainCredential $domainCred `
-UserPrincipalName $cloudUserName -SetupCloudTrust `
-RotateServerKey
Po obróceniu klucza propagacja zmienionego klucza między serwerami dystrybucji kluczy Kerberos trwa kilka godzin. Ze względu na ten czas dystrybucji kluczy można obrócić klucz raz w ciągu 24 godzin. Jeśli musisz ponownie obrócić klucz w ciągu 24 godzin z jakiegokolwiek powodu, na przykład po utworzeniu obiektu zaufanej domeny, możesz dodać -Force
parametr:
Set-AzureAdKerberosServer -Domain $domain `
-DomainCredential $domainCred `
-UserPrincipalName $cloudUserName -SetupCloudTrust `
-RotateServerKey -Force
Usuwanie obiektu zaufanej domeny
Dodany obiekt zaufanej domeny można usunąć przy użyciu następującego polecenia:
Remove-AzureADKerberosServerTrustedDomainObject -Domain $domain `
-DomainCredential $domainCred `
-UserPrincipalName $cloudUserName
To polecenie spowoduje usunięcie tylko zaufanego obiektu domeny. Jeśli domena obsługuje uwierzytelnianie FIDO, możesz usunąć zaufany obiekt domeny przy zachowaniu konta usługi Microsoft Entra wymaganego dla usługi uwierzytelniania FIDO.
Usuń wszystkie ustawienia protokołu Kerberos
Możesz usunąć zarówno konto usługi Microsoft Entra, jak i zaufany obiekt domeny, używając następującego polecenia:
Remove-AzureAdKerberosServer -Domain $domain `
-DomainCredential $domainCred `
-UserPrincipalName $cloudUserName
Powiązana zawartość
- Zobacz, jak skonfigurować usługę Azure SQL Managed Instance na potrzeby uwierzytelniania systemu Windows dla usługi Microsoft Entra ID
- Co to jest uwierzytelnianie systemu Windows dla podmiotów zabezpieczeń usługi Microsoft Entra w usłudze Azure SQL Managed Instance?
- Zobacz Jak skonfigurować uwierzytelnianie systemu Windows dla usługi Azure SQL Managed Instance przy użyciu usługi Microsoft Entra ID i protokołu Kerberos