Project für das Web – Teil 2 benutzerdefiniertes Attribut im Azure AD anlegen

Wie ich in meinem letzten Beitrag (Link) schon geschrieben habe, wollen wir in diesem Beitrag das benutzerdefinierte Attribut für die Selektion in eine dynamische Gruppe erstellen. Da ich selbst keinen lokalen Active Directory besitze, beschreibe ich die Erstellung des Attributs in meinem Azure AD in der Cloud. Sollten Sie Azure AD Connect in Ihrem Unternehmen für die Synchronisation von Benutzeraccounts nutzen, so können Sie natürlich auch dort ein Attribut pflegen und dieses dann für die Selektion in die dynamische Gruppe nutzen.

Ich werde Ihnen in meinem Beispiel die Schritte mit der PowerShell zeigen. Sie könnten allerdings auch benutzerdefinierte Attribute über das neue Feature „External Identities“ anlegen. Dieses Feature befindet sich zum jetzigen Zeitpunkt (17.06.2020) allerdings noch in der Preview-Phase. Außerdem müssten Sie die Nutzung der Option „Self-Service-Registrierung von Gästen über Benutzerflows“ aktivieren. Beides ist in Produktivumgebung nicht immer gewünscht. Aus diesem Grund zeige ich Ihnen die klassische Variante über die PowerShell.

Prüfen Sie als erstes die aktuelle Version des Moduls AzureADPreview. Öffnen Sie hierzu auf Ihren Computer die Windows Power Shell ISE als Administrator. Importieren Sie das Modul „AzureADPreview“. Führen Sie hierzu den Befehl Import-Module AzureADPreview aus.

Geben Sie anschließend den Befehl: „Get-Module“ ein, um sich die aktuelle Version anzeigen zu lassen. In meinem Fall habe ich die aktuelle Version schon auf meinem Computer installiert. Führen Sie jetzt den Befehl „Update-Module AzureADPreview“ aus, um das Modul zu aktualisieren. Kontrollieren Sie anschließend, ob das Update installiert wurde. Geben Sie hierzu erneut den Befehl „Get-Module“ ein.

image

Nachdem wir jetzt die aktuelle Version installiert und überprüft haben, melden wir uns an unserem Azure AD an. Geben Sie hierzu den Befehl „Connect-AzureAD“ ein. Melden Sie sich in dem sich öffnenden Fenster mit Ihren Anmeldeinformationen an. Die erfolgreiche Anmeldung sollte Ihnen wie folgt angezeigt werden.

image

Schauen wir uns als erstes einmal die aktuellen Einstellungen an. In meinem ersten Blogbeitrag hatte ich schon geschrieben, dass ich in meinem Beispiel den Test-User „Willi Plum“ aus meiner Demo-Umgebung für die Zuweisung des Attributs nutzen möchte. Also lesen wir uns einmal die jetzige Konfiguration des Users aus. Hierzu gebe ich den folgenden Befehl ein.

$userID = (Get-AzureADUser -SearchString „Willi Plum“).ObjectId
Get-AzureADUser -ObjectId $UserId | Select -ExpandProperty ExtensionProperty

image

Wie wir erkennen können gibt es noch keine Attribute für den User. Erweiterungseigenschaften können nur für eine bestimmte Anwendung oder für eine Platzhalteranwendung erstellt werden. Also erstellen wir im ersten Schritt eine Anwendung mit dem Namen „Meine Extension-Erweiterungen“. Hierzu führen wir den folgenden Befehl aus.

$MyApp = (New-AzureADApplication -DisplayName „Meine Extension-Erweiterungen“ -IdentifierUris „https://dummy“).ObjectId

image

Hinweis: Sie können sich die zur Verfügung stehenden Applicationen mit dem Befehl: Get-AzureADApplication anzeigen lassen. Bitte beachten Sie ebenfalls, dass Sie diese Application nur einmal anlegen müssen. Sollten Sie weitere Attribute benötigen, so können Sie diese einfach anhängen.

image

Als nächsten Schritt müssen wir für unsere Application noch einen Dienst-Prinzipalnamen erstellen. Nur so können wir die Erweiterungen hinzufügen. Geben Sie hierzu den folgenden Befehl ein.

New-AzureADServicePrincipal -AppId (Get-AzureADApplication -SearchString „Meine Extension-Erweiterungen“).AppId

image

Jetzt können wir endlich unser Attribut anlegen. Das Attribut soll bei mir den Namen P4W (Project for the Web) bekommen. Hierzu gebe ich den folgenden Befehl ein

New-AzureADApplicationExtensionProperty -ObjectId $MyApp -Name „P4W“ -DataType „String“ -TargetObjects „User“

image

Wie wir erkennen können wurde das Attribut erfolgreich angelegt. Kopieren Sie sich den Namen (extension_8994608f19f8488ca926862c381afc4f_P4W) am besten in eine Textdatei. Wir benötigen diesen später für die Erstellung des Filters in der dynamischen Gruppe.

Jetzt müssen wir nur noch den Wert für das Attribut zuweisen. In meinem Fall reicht ein „yes“. Hierzu geben wir den folgenden Befehl ein.

Hinweis: Natürlich müssen Sie den Namen des Attributs entsprechend ersetzen.

Set-AzureADUserExtension -ObjectId $UserId -ExtensionName „extension_8994608f19f8488ca926862c381afc4f_P4W“ -ExtensionValue „yes“

image

Kontrollieren Sie jetzt, ob der Wert übernommen wurde. Geben Sie hierzu erneut den folgenden Befehl ein.

$userID = (Get-AzureADUser -SearchString „Willi Plum“).ObjectId
Get-AzureADUser -ObjectId $UserId | Select -ExpandProperty ExtensionProperty

image

Wie wir auch hier erkennen können, wurde der Wert übernommen.

Hinweis: Sollten Sie das Attribut wieder löschen wollen, so geben Sie den folgenden Befehl ein.

Remove-AzureADApplicationExtensionProperty -ObjectId (Get-AzureADApplication -SearchString „Meine Extension-Erweiterungen“).ObjectID -ExtensionPropertyId 3aa95491-d7de-47bc-b710-78e3a73038fd

Bitte beachten Sie, dass Sie bei dem „SeachString“ den Namen der entsprechenden Application eintragen (Get-AzureADApplication) und bei der Option „ExtensionPropertyId“ die entsprechende ID des Attributs. Das Löschen des Attributs hat nicht zur Folge, dass die Application ebenfalls gelöscht wird. Dies müssten Sie bei Bedarf separat durchführen.

Anlegen der dynamischen Gruppe

Wir können nun die dynamische Gruppe anlegen. Öffnen Sie das Azure Portal unter https://portal.azure.com und melden Sie sich dort an. Öffnen Sie das Azure Active Directory. Klicken Sie auf der linken Seite die Option „Gruppen“.

 

SNAGHTML7736872

Klicken Sie im oberen Bereich auf die Option „Neue Gruppe“. Da wir diese Gruppe in Project für das Web verwenden wollen, müssen wir eine Office 365 Gruppe erstellen. Geben Sie einen Gruppennamen ein und als Mitgliedschaftstyp die Option „dynamischer Benutzer“.

image

Klicken Sie im unteren Bereich auf den Link „Dynamische Abfrage hinzufügen“. Klicken Sie dann auf der rechten Seite unter Reglesyntax auf die Option „Bearbeiten“. Öffnen Sie den Befehl mit einer offenen Klammer. Geben Sie dann als erstes das entsprechende Objekt an, welches Sie ansprechen wollen. In unserem Falle ist das der „user“. Setzen Sie einen Punkt und kopieren Sie den Namen unseres Attributs dahinter. Tragen Sie als Operator -match und als Suchkriterium das „yes“ ein. Schließen Sie die Abfrage wieder.

image

Wichtig! Sie Synchronisation dauert ein wenig. Ich habe noch einem weiteren User (Uschi Peters) das Attribut hinzugefügt. Beide sind nun Mitglied der Gruppe.

image

In meinem nächsten Artikel werden wir jetzt das Template in Project for the web anlegen.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.