Azure Files – Hybrid AD-Authentifizierung für Azure File Shares

Dieses Beitrag beschreibt den Ablauf der Aktivierung der lokalen AD Authentifizierung für Azure Files. Damit ist es möglich, dass sich Benutzer mit ihren gewohnten AD-Credentials unkompliziert bei Azure Files authentifizieren können und damit Zugriff auf dortige Dateifreigaben erhalten (Single-Sign-On). Eine Änderung der lokalen AD-Umgebung ist nicht notwendig. Dabei ist es egal, ob sich Benutzer in der lokalen oder in der Azure Umgebung aufhalten.

Generelle Voraussetzungen:

  • Eine existierende AD-Umgebung welche korrekt mittels Azure-AD-Sync nach Azure AD synchronisiert
  • Mindestens einen der Domäne beigetretenen Computer
  • Regionale Verfügbarkeit des Dienstes
  • Sicherheit darüber, dass Azure Files prinzipiell funktioniert. Als Test kann eine Dateifreigabe mittels Speicherkontenschlüssel erstellt und getestet werden. Diese muss funktionieren!

Der Beitrag ist extra so kurz wie möglich gehalten und beschreibt nur die wichtigsten Schritte. Weitere, sowie tiefgründigere Informationen, sind der Microsoft Dokumentation zu entnehmen.

Lösung

Vorhandenes Speicherkonto auswählen oder ein neues erstellen.

Das Archiv „AzureFilesHybrid“ von GitHub herunterladen und entpacken.

Hinweis: Dies und das Nachfolgende auf einem Computer durchführen, welcher der lokalen Domäne beigetreten ist. Außerdem sicherstellen, dass ein AD-Konto verwendet wird, welches mindestens das Recht besitzt einen Dienstbenutzer (service log on account) zu erstellen.

PowerShell-Terminal öffnen und folgende Befehle ausführen und bestätigen:

Install-Module -Name az -AllowClobber -Scope CurrentUser
Set-ExecutionPolicy -ExecutionPolicy Unrestricted -Scope CurrentUser

In der PowerShell-Sitzung in den Ordner des entpackten „AzureFilesHybrid“ Archives wechseln und folgende Befehle ausführen und bestätigen:

.\CopyToPSPath.ps1
Import-Module -Name AzFilesHybrid -Verbose

Eine Verbindung mit dem Azure-Online-Dienst aufbauen. Dazu mit dem gewünschten Azure-Konto anmelden und sicherstellen, dass das korrekte Abo ausgewählt wurde. Sollte das falsche Abo vorausgewählt sein, kann es mit einem optionalen Befehl gewechselt werden.

Connect-azaccount

Optional bei falschem Abo:
Select-AzSubscription -SubscriptionId "ID"

Erstellung und Zuweisung eines Service-Benutzers zur Authentifizierung des Azure Speicherkontos. Dabei eine OU angeben unter welcher der Benutzer erstellt werden soll.

Hinweis: Darauf achten, dass das Passwort des Dienstbenutzers nicht abläuft! (Sollte „Kennwort läuft nie ab“ nicht verwendet werden)

Join-AzStorageAccountForAuth -ResourceGroupName "Ressourcengruppenname" -Name "Speicherkontoname" -Domain "lokale Domäne" -DomainAccountType ServiceLogonAccount -OrganizationalUnitDistinguishedName "Gewünschte OU"

Anschließend kann der erstellte Benutzer in der angegebenen OU des ADs gefunden werden.

Als nächstes sollte die Konfiguration überprüft werden. Dazu ggf. ein zweites PowerShell-Fenster öffnen und folgende Informationen auslesen lassen und temporär merken.

$domainInformation = Get-ADDomain
$domainGuid = $domainInformation.ObjectGUID.ToString()
$domainName = $domainInformation.DnsRoot
$domainGuid
$domainName

Die nachfolgenden Befehle in das erste PowerShell-Fenster eingeben und prüfen, ob die angezeigten Informationen passen.

$storageacccount = Get-AzStorageAccount -ResourceGroupName "Ressourcengruppenname" -Name "Speicherkontoname"
$storageacccount | Get-AzStorageAccountKey -ListKerbKey | Format-Table Keyname
# Es sollten Schlüsselnamen angezeigt werden
$storageacccount.AzureFilesIdentityBasedAuth.DirectoryServiceOptions
# Ergebnis sollte "AD" sein
$storageacccount.AzureFilesIdentityBasedAuth.ActiveDirectoryProperties
# Die informationen sollten mit denen aus dem zweiten PowerShell-Fenster übereinstimmen(DomainName und DomainGUID)

Über das Azure-Portal können, in der Konfiguration des Speicherkontos, die Freigabeberechtigungen (via IAM) vorgenommen werden. Folgende Rollen sind hierfür relevant:

NameBeschreibung
Leser für Speicherdateidaten-SMB-FreigabeErmöglicht Lesezugriff auf eine Azure-Dateifreigabe über SMB.
Mitwirkender für Speicherdateidaten-SMB-FreigabeErmöglicht Lese-, Schreib- und Löschzugriff in Azure Storage-Dateifreigaben über SMB.
Mitwirkender mit erhöhten Rechten für Speicherdateidaten-SMB-FreigabeErmöglicht den Zugriff zum Lesen, Schreiben, Löschen und Ändern von NTFS-Berechtigungen in Azure Storage-Dateifreigaben über SMB.

Hinweis: Alternativ können Berechtigungen auch direkt über die Freigabe im Windows-Explorer (ACL) vorgenommen werden.

Zuletzt den Azure Fileshare via CMD mounten damit er über den Explorer verwendet werden kann.

net use LAUFWERKBUCHSTABE: \\SPEICHERKONTONAME.file.core.windows.net\FREIGABENAME

Hinweis: Die Eingabeaufforderung muss als „normaler“ Benutzer ausgeführt werden und nicht als Administrator!