Een cloudvertrouwensrelatie configureren tussen on-premises AD DS en Microsoft Entra ID voor toegang tot Azure Files
Veel organisaties willen verificatie op basis van identiteiten gebruiken voor SMB Azure-bestandsshares in omgevingen die zowel on-premises Active Directory-domein Services (AD DS) als Microsoft Entra ID (voorheen Azure Active Directory) omvatten, maar voldoen niet aan de vereiste vereisten voor het besturingssysteem of domein.
In dergelijke scenario's kunnen klanten Microsoft Entra Kerberos-verificatie inschakelen voor hybride gebruikersidentiteiten en vervolgens een cloudvertrouwensrelatie tot stand brengen tussen hun on-premises AD DS en Microsoft Entra-id voor toegang tot SMB-bestandsshares met hun on-premises referenties. In dit artikel wordt uitgelegd hoe een cloudvertrouwensrelatie werkt en vindt u instructies voor het instellen en valideren. Het bevat ook stappen voor het roteren van een Kerberos-sleutel voor uw serviceaccount in Microsoft Entra ID en Trusted Domain Object, en stappen voor het verwijderen van een vertrouwd domeinobject en alle Kerberos-instellingen, indien gewenst.
Dit artikel is gericht op het verifiëren van hybride gebruikersidentiteiten, die on-premises AD DS-identiteiten zijn die worden gesynchroniseerd met Microsoft Entra ID met behulp van Microsoft Entra Connect of Microsoft Entra Connect-cloudsynchronisatie. Identiteiten in de cloud worden momenteel niet ondersteund voor Azure Files.
Van toepassing op
Bestands sharetype | SMB | NFS |
---|---|---|
Standaardbestandsshares (GPv2), LRS/ZRS | ![]() |
![]() |
Standaardbestandsshares (GPv2), GRS/GZRS | ![]() |
![]() |
Premium bestandsshares (FileStorage), LRS/ZRS | ![]() |
![]() |
Scenario's
Hier volgen enkele voorbeelden van scenario's waarin u mogelijk een cloudvertrouwensrelatie wilt configureren:
U hebt een traditionele on-premises AD DS, maar u kunt deze niet gebruiken voor verificatie omdat u geen niet-gempte netwerkconnectiviteit met de domeincontrollers hebt.
U bent begonnen met migreren naar de cloud, maar momenteel worden toepassingen nog steeds uitgevoerd op traditionele on-premises AD DS.
Sommige of al uw clientcomputers voldoen niet aan de besturingssysteemvereisten voor Microsoft Entra Kerberos-verificatie.
Machtigingen
Voor het voltooien van de stappen die in dit artikel worden beschreven, hebt u het volgende nodig:
- De gebruikersnaam en het wachtwoord van een on-premises Active Directory-beheerder
- Gebruikersnaam en wachtwoord van het Microsoft Entra Global Administrator-account
Vereisten
Voordat u de binnenkomende verificatiestroom op basis van een vertrouwensrelatie implementeert, moet u ervoor zorgen dat aan de volgende vereisten wordt voldaan:
Vereiste | Beschrijving |
---|---|
De Client moet Windows 10, Windows Server 2012 of een hogere versie van Windows uitvoeren. | |
Clients moeten worden toegevoegd aan Active Directory (AD). Het domein moet een functioneel niveau van Windows Server 2012 of hoger hebben. | U kunt bepalen of de client is gekoppeld aan AD door de opdracht dsregcmd uit te voeren: dsregcmd.exe /status |
Een Microsoft Entra-tenant. | Een Microsoft Entra-tenant is een grens voor identiteitsbeveiliging die onder controle staat van de IT-afdeling van uw organisatie. Het is een instantie van Microsoft Entra-id waarin informatie over één organisatie zich bevindt. |
Een Azure-abonnement onder dezelfde Microsoft Entra-tenant die u wilt gebruiken voor verificatie. | |
Een Azure-opslagaccount in het Azure-abonnement. | Een Azure-opslagaccount is een resource die fungeert als een container voor het groeperen van alle gegevensservices uit Azure Storage, inclusief bestanden. |
Microsoft Entra Connect of Microsoft Entra Connect-cloudsynchronisatie moet zijn geïnstalleerd. | Deze oplossingen worden gebruikt in hybride omgevingen waar identiteiten bestaan, zowel in Microsoft Entra ID als on-premises AD DS. |
Microsoft Entra Kerberos-verificatie inschakelen
Als u Microsoft Entra Kerberos-verificatie al hebt ingeschakeld voor uw opslagaccount, kunt u deze stap overslaan en doorgaan met het maken en configureren van het vertrouwde domeinobject van Microsoft Entra Kerberos.
U kunt Microsoft Entra Kerberos-verificatie inschakelen in Azure Files voor hybride gebruikersaccounts met behulp van Azure Portal, PowerShell of Azure CLI.
Volg deze stappen om Microsoft Entra Kerberos-verificatie in te schakelen met behulp van Azure Portal.
Meld u aan bij Azure Portal en selecteer het opslagaccount waarvoor u Microsoft Entra Kerberos-verificatie wilt inschakelen.
Selecteer onder Gegevensopslag bestandsshares.
Selecteer naast Active Directory de configuratiestatus (bijvoorbeeld Niet geconfigureerd).
Selecteer Instellen onder Microsoft Entra Kerberos.
Schakel het selectievakje Microsoft Entra Kerberos in .
Optioneel: Als u machtigingen op map- en bestandsniveau wilt configureren via Windows Bestandenverkenner, moet u de domeinnaam en domein-GUID voor uw on-premises AD opgeven. U kunt deze informatie ophalen van uw domeinbeheerder of door de volgende Active Directory PowerShell-cmdlet uit te voeren vanaf een on-premises AD-gekoppelde client:
Get-ADDomain
. Uw domeinnaam moet worden vermeld in de uitvoer onderDNSRoot
en uw domein-GUID moet worden vermeld onderObjectGUID
. Als u liever machtigingen op map- en bestandsniveau wilt configureren met behulp van icacls, kunt u deze stap overslaan. Als u echter icacls wilt gebruiken, heeft de client een ongempte netwerkverbinding met de on-premises AD nodig.Selecteer Opslaan.
Waarschuwing
Als u Microsoft Entra Kerberos-verificatie eerder hebt ingeschakeld via handmatige beperkte preview-stappen voor het opslaan van FSLogix-profielen op azure Files voor aan Microsoft Entra gekoppelde VM's, wordt het wachtwoord voor de service-principal van het opslagaccount ingesteld op verlopen om de zes maanden. Zodra het wachtwoord is verlopen, kunnen gebruikers geen Kerberos-tickets ophalen naar de bestandsshare. Als u dit wilt verhelpen, raadpleegt u 'Error - Service principal password has expired in Microsoft Entra ID' onder Potential errors when enabling Microsoft Entra Kerberos authentication for hybrid users.
Beheerderstoestemming verlenen aan de nieuwe service-principal
Nadat u Microsoft Entra Kerberos-verificatie hebt ingeschakeld, moet u expliciet beheerderstoestemming verlenen aan de nieuwe Microsoft Entra-toepassing die is geregistreerd in uw Microsoft Entra-tenant. Deze service-principal wordt automatisch gegenereerd en wordt niet gebruikt voor autorisatie voor de bestandsshare, dus breng geen wijzigingen aan in de service-principal die hier worden beschreven. Als u dit doet, krijgt u mogelijk een foutmelding.
U kunt de API-machtigingen vanuit Azure Portal configureren door de volgende stappen uit te voeren:
- Open Microsoft Entra ID.
- Selecteer App-registraties in het servicemenu onder Beheren.
- Selecteer Alle toepassingen.
- Selecteer de toepassing met de naam die overeenkomt met [Opslagaccount]
<your-storage-account-name>
.file.core.windows.net. - Selecteer API-machtigingen in het servicemenu onder Beheren.
- Selecteer Beheerderstoestemming verlenen voor [Directory-naam] om toestemming te verlenen voor de drie aangevraagde API-machtigingen (openid, profiel en User.Read) voor alle accounts in de map.
- Selecteer Ja om te bevestigen.
Belangrijk
Als u verbinding maakt met een opslagaccount via een privé-eindpunt/privékoppeling met behulp van Microsoft Entra Kerberos-verificatie, moet u ook de FQDN van de privékoppeling toevoegen aan de Microsoft Entra-toepassing van het opslagaccount. Zie de vermelding in onze gids voor probleemoplossing voor instructies.
Meervoudige verificatie uitschakelen voor het opslagaccount
Microsoft Entra Kerberos biedt geen ondersteuning voor het gebruik van MFA voor toegang tot Azure-bestandsshares die zijn geconfigureerd met Microsoft Entra Kerberos. U moet de Microsoft Entra-app die uw opslagaccount vertegenwoordigt uitsluiten van uw MFA-beleid voor voorwaardelijke toegang als deze van toepassing zijn op alle apps.
De app voor het opslagaccount moet dezelfde naam hebben als het opslagaccount in de uitsluitingslijst voor voorwaardelijke toegang. Wanneer u zoekt naar de opslagaccount-app in de uitsluitingslijst voor voorwaardelijke toegang, zoekt u naar: [Opslagaccount] <your-storage-account-name>
.file.core.windows.net
Vergeet niet om te vervangen door <your-storage-account-name>
de juiste waarde.
Belangrijk
Als u MFA-beleid niet uitsluit van de opslagaccount-app, hebt u geen toegang tot de bestandsshare. Als u de bestandsshare net use
probeert toe te wijzen, wordt er een foutbericht weergegeven met de tekst 'Systeemfout 1327: Accountbeperkingen verhinderen dat deze gebruiker zich aanmeldt. Bijvoorbeeld: lege wachtwoorden zijn niet toegestaan, aanmeldingstijden zijn beperkt of er is een beleidsbeperking afgedwongen.
Zie het volgende voor hulp bij het uitschakelen van MFA:
- Uitsluitingen toevoegen voor service-principals van Azure-resources
- Beleid voor voorwaardelijke toegang maken
Machtigingen op deelniveau toewijzen
Wanneer u op identiteit gebaseerde toegang inschakelt, moet u voor elke share toewijzen welke gebruikers en groepen toegang hebben tot die specifieke share. Zodra een gebruiker of groep toegang heeft tot een share, nemen Windows ACL's (ook wel NTFS-machtigingen genoemd) voor afzonderlijke bestanden en mappen over. Dit maakt fijnmazige controle over machtigingen mogelijk, vergelijkbaar met een SMB-share op een Windows-server.
Als u machtigingen op shareniveau wilt instellen, volgt u de instructies in Machtigingen op shareniveau toewijzen aan een identiteit.
Machtigingen op map- en bestandsniveau configureren
Zodra machtigingen op shareniveau zijn ingesteld, kunt u machtigingen op map-/bestandsniveau toewijzen aan de gebruiker of groep. Hiervoor is het gebruik van een apparaat met niet-gempte netwerkconnectiviteit met een on-premises AD vereist.
Als u machtigingen op map- en bestandsniveau wilt configureren, volgt u de instructies in Machtigingen op map- en bestandsniveau configureren via SMB.
Het vertrouwde domeinobject microsoft Entra Kerberos maken en configureren
Als u het vertrouwde domeinobject van Microsoft Entra Kerberos wilt maken en configureren, gebruikt u de PowerShell-module azure AD Hybrid Authentication Management . Met deze module kunnen organisaties met hybride identiteit moderne referenties gebruiken voor hun toepassingen en kunnen Microsoft Entra ID de vertrouwde bron worden voor zowel cloud- als on-premises verificatie.
Het vertrouwde domeinobject instellen
U gebruikt de PowerShell-module voor hybride verificatiebeheer van Azure AD om een vertrouwd domeinobject in te stellen in het on-premises AD-domein en vertrouwensinformatie te registreren bij Microsoft Entra-id. Hiermee maakt u een ingebonden vertrouwensrelatie in de on-premises AD, waardoor Microsoft Entra-id on-premises AD kan vertrouwen.
U hoeft het vertrouwde domeinobject slechts één keer per domein in te stellen. Als u dit al hebt gedaan voor uw domein, kunt u deze sectie overslaan en doorgaan met het configureren van de clients om Kerberos-tickets op te halen.
De PowerShell-module hybride verificatiebeheer van Azure AD installeren
Start een Windows PowerShell-sessie met de optie Als administrator uitvoeren.
Installeer de PowerShell-module hybride verificatiebeheer van Azure AD met behulp van het volgende script. Met het script:
- Hiermee schakelt u TLS 1.2 in voor communicatie.
- Hiermee wordt de NuGet-pakketprovider geïnstalleerd.
- Registreert de PSGallery-opslagplaats.
- Installeert de PowerShellGet-module.
- Hiermee wordt de PowerShell-module hybride verificatiebeheer van Azure AD geïnstalleerd.
- De Azure AD Hybrid Authentication Management PowerShell maakt gebruik van de AzureADPreview-module, die geavanceerde Microsoft Entra-beheerfuncties biedt.
- Deze opdracht bevat de optievlag om te beschermen tegen onnodige installatieconflicten met de
-AllowClobber
Azure AD PowerShell-module.
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
Install-PackageProvider -Name NuGet -Force
if (@(Get-PSRepository | ? {$_.Name -eq "PSGallery"}).Count -eq 0){
Register-PSRepository -DefaultSet-PSRepository -Name "PSGallery" -InstallationPolicy Trusted
}
Install-Module -Name PowerShellGet -Force
Install-Module -Name AzureADHybridAuthenticationManagement -AllowClobber
Het object Vertrouwd domein maken
Start een Windows PowerShell-sessie met de optie Als administrator uitvoeren.
Stel de algemene parameters in. Pas het onderstaande script aan voordat u het uitvoert.
- Stel de
$domain
parameter in op uw on-premises Active Directory-domeinnaam. - Wanneer u hierom wordt gevraagd
Get-Credential
, voert u de gebruikersnaam en het wachtwoord van een on-premises Active Directory-beheerder in. - Stel de
$cloudUserName
parameter in op de gebruikersnaam van een account met bevoegdheden van een globale beheerder voor microsoft Entra-cloudtoegang.
Notitie
Als u uw huidige Windows-aanmeldingsaccount wilt gebruiken voor uw on-premises Active Directory-toegang, kunt u de stap overslaan waarin referenties zijn toegewezen aan de
$domainCred
parameter. Als u deze aanpak volgt, neemt u de-DomainCredential
parameter niet op in de PowerShell-opdrachten die u volgt op deze stap.$domain = "your on-premises domain name, for example contoso.com" $domainCred = Get-Credential $cloudUserName = "Azure AD user principal name, for example admin@contoso.onmicrosoft.com"
- Stel de
Controleer de huidige Kerberos-domeininstellingen.
Voer de volgende opdracht uit om de huidige Kerberos-instellingen van uw domein te controleren:
Get-AzureAdKerberosServer -Domain $domain ` -DomainCredential $domainCred ` -UserPrincipalName $cloudUserName
Als dit de eerste keer is dat u een Microsoft Entra Kerberos-opdracht aanroept, wordt u gevraagd om microsoft Entra-cloudtoegang.
- Voer het wachtwoord in voor uw Microsoft Entra Global Administrator-account.
- Als uw organisatie gebruikmaakt van andere moderne verificatiemethoden, zoals Microsoft Entra-meervoudige verificatie of SmartCard, volgt u de instructies die zijn aangevraagd voor aanmelding.
Als dit de eerste keer is dat u Microsoft Entra Kerberos-instellingen configureert, geeft de cmdlet Get-AzureAdKerberosServer lege informatie weer, zoals in de volgende voorbeelduitvoer:
ID : UserAccount : ComputerAccount : DisplayName : DomainDnsName : KeyVersion : KeyUpdatedOn : KeyUpdatedFrom : CloudDisplayName : CloudDomainDnsName : CloudId : CloudKeyVersion : CloudKeyUpdatedOn : CloudTrustDisplay :
Als uw domein al FIDO-verificatie ondersteunt, geeft de cmdlet gegevens van het
Get-AzureAdKerberosServer
Microsoft Entra-serviceaccount weer, zoals in de volgende voorbeelduitvoer. HetCloudTrustDisplay
veld retourneert een lege waarde.ID : XXXXX UserAccount : CN=krbtgt-AzureAD, CN=Users, DC=contoso, DC=com ComputerAccount : CN=AzureADKerberos, OU=Domain Controllers, DC=contoso, DC=com DisplayName : XXXXXX_XXXXX DomainDnsName : contoso.com KeyVersion : 53325 KeyUpdatedOn : 2/24/2024 9:03:15 AM KeyUpdatedFrom : ds-aad-auth-dem.contoso.com CloudDisplayName : XXXXXX_XXXXX CloudDomainDnsName : contoso.com CloudId : XXXXX CloudKeyVersion : 53325 CloudKeyUpdatedOn : 2/24/2024 9:03:15 AM CloudTrustDisplay :
Voeg het vertrouwde domeinobject toe.
Voer de PowerShell-cmdlet Set-AzureAdKerberosServer uit om het vertrouwde domeinobject toe te voegen. Zorg ervoor dat u de parameter opneemt
-SetupCloudTrust
. Als er geen Microsoft Entra-serviceaccount is, wordt met deze opdracht een nieuw Microsoft Entra-serviceaccount gemaakt. Met deze opdracht maakt u alleen het aangevraagde trusted domain-object als er een Microsoft Entra-serviceaccount is.Set-AzureADKerberosServer -Domain $domain -UserPrincipalName $cloudUserName -DomainCredential $domainCred -SetupCloudTrust
Notitie
Om in een forest met meerdere domeinen de fout LsaCreateTrustedDomainEx 0x549 te voorkomen bij het uitvoeren van de opdracht op een onderliggend domein:
- Voer de opdracht uit in het hoofddomein (parameter opnemen
-SetupCloudTrust
). - Voer dezelfde opdracht uit op het onderliggende domein zonder de
-SetupCloudTrust
parameter.
Nadat u het vertrouwde domeinobject hebt gemaakt, kunt u de bijgewerkte Kerberos-instellingen controleren met behulp van de
Get-AzureAdKerberosServer
PowerShell-cmdlet, zoals wordt weergegeven in de vorige stap. Als deSet-AzureAdKerberosServer
cmdlet is uitgevoerd met de-SetupCloudTrust
parameter, moet hetCloudTrustDisplay
veld nu worden geretourneerdMicrosoft.AzureAD.Kdc.Service.TrustDisplay
, zoals in de volgende voorbeelduitvoer:ID : XXXXX UserAccount : CN=krbtgt-AzureAD, CN=Users, DC=contoso, DC=com ComputerAccount : CN=AzureADKerberos, OU=Domain Controllers, DC=contoso, DC=com DisplayName : XXXXXX_XXXXX DomainDnsName : contoso.com KeyVersion : 53325 KeyUpdatedOn : 2/24/2024 9:03:15 AM KeyUpdatedFrom : ds-aad-auth-dem.contoso.com CloudDisplayName : XXXXXX_XXXXX CloudDomainDnsName : contoso.com CloudId : XXXXX CloudKeyVersion : 53325 CloudKeyUpdatedOn : 2/24/2024 9:03:15 AM CloudTrustDisplay : Microsoft.AzureAD.Kdc.Service.TrustDisplay
Notitie
Voor onafhankelijke Azure-clouds is het instellen van de
TopLevelNames
eigenschap vereist. Deze eigenschap is standaard ingesteldwindows.net
. Implementaties van onafhankelijke Azure-clouds van SQL Managed Instance maken gebruik van een andere domeinnaam op het hoogste niveau, zoalsusgovcloudapi.net
voor Azure US Government. Stel uw vertrouwde domeinobject in op die domeinnaam op het hoogste niveau met behulp van de volgende PowerShell-opdracht:Set-AzureADKerberosServer -Domain $domain -DomainCredential $domainCred -CloudCredential $cloudCred -SetupCloudTrust -TopLevelNames "usgovcloudapi.net,windows.net"
. U kunt de instelling controleren met de volgende PowerShell-opdracht:Get-AzureAdKerberosServer -Domain $domain -DomainCredential $domainCred -UserPrincipalName $cloudUserName | Select-Object -ExpandProperty CloudTrustDisplay
- Voer de opdracht uit in het hoofddomein (parameter opnemen
De clients configureren om Kerberos-tickets op te halen
Identificeer uw Microsoft Entra-tenant-id en gebruik Groepsbeleid om de clientcomputer(s) te configureren waaruit u Azure-bestandsshares wilt koppelen/gebruiken. U moet dit doen op elke client waarop Azure Files wordt gebruikt.
Configureer dit groepsbeleid op de client(en) op Ingeschakeld: Administrative Templates\System\Kerberos\Allow retrieving the Azure AD Kerberos Ticket Granting Ticket during logon
Implementeer de volgende groepsbeleidsinstelling op clientcomputers met behulp van de binnenkomende stroom op basis van een vertrouwensrelatie:
Bewerk de beheersjablonen\System\Kerberos\Geef KDC-proxyservers op voor de beleidsinstelling kerberos-clients .
Selecteer Ingeschakeld.
Selecteer Onder Opties de optie Weergeven.... Hiermee opent u het dialoogvenster Inhoud weergeven.
Definieer als volgt de instellingen van de KDC-proxyservers met behulp van toewijzingen. Vervang de tenant-id van Microsoft Entra door de
your_Azure_AD_tenant_id
tijdelijke aanduiding. Let op de spatie die volgthttps
en vóór de sluiting/
van de waardetoewijzing.Waardenaam Weergegeven als KERBEROS.MICROSOFTONLINE.COM <https login.microsoftonline.com:443: your_Azure_AD_tenant_id
/kerberos/>Selecteer OK om het dialoogvenster Inhoud weergeven te sluiten.
Selecteer Toepassen in het dialoogvenster KDC-proxyservers opgeven voor Kerberos-clients.
De Kerberos-sleutel draaien
U kunt de Kerberos-sleutel periodiek roteren voor het gemaakte Microsoft Entra-serviceaccount en het vertrouwde domeinobject voor beheerdoeleinden.
Set-AzureAdKerberosServer -Domain $domain `
-DomainCredential $domainCred `
-UserPrincipalName $cloudUserName -SetupCloudTrust `
-RotateServerKey
Nadat de sleutel is geroteerd, duurt het enkele uren om de gewijzigde sleutel door te geven tussen de Kerberos KDC-servers. Vanwege deze tijdsinstelling voor sleuteldistributie kunt u de sleutel eenmaal binnen 24 uur draaien. Als u de sleutel om welke reden dan ook binnen 24 uur opnieuw moet draaien, bijvoorbeeld net nadat u het object Vertrouwd domein hebt gemaakt, kunt u de -Force
parameter toevoegen:
Set-AzureAdKerberosServer -Domain $domain `
-DomainCredential $domainCred `
-UserPrincipalName $cloudUserName -SetupCloudTrust `
-RotateServerKey -Force
Het vertrouwde domeinobject verwijderen
U kunt het toegevoegde Trusted Domain Object verwijderen met behulp van de volgende opdracht:
Remove-AzureADKerberosServerTrustedDomainObject -Domain $domain `
-DomainCredential $domainCred `
-UserPrincipalName $cloudUserName
Met deze opdracht wordt alleen het vertrouwde domeinobject verwijderd. Als uw domein FIDO-verificatie ondersteunt, kunt u het object Vertrouwd domein verwijderen terwijl u het Microsoft Entra-serviceaccount dat is vereist voor de FIDO-verificatieservice, onderhoudt.
Alle Kerberos-instellingen verwijderen
U kunt zowel het Microsoft Entra-serviceaccount als het vertrouwde domeinobject verwijderen met behulp van de volgende opdracht:
Remove-AzureAdKerberosServer -Domain $domain `
-DomainCredential $domainCred `
-UserPrincipalName $cloudUserName