Anwendung mit benutzerdefinierten Attributen an Entra ID anbinden - so geht's!

Lesedauer 5 Minuten


Active Directory ist nach wie vor die primäre Authentifizierungs- und Autorisierungsplattform für viele Unternehmen. Sie ist jedoch mittlerweile etwas in die Jahre gekommen. So braucht es beispielsweise Drittherstellerlösungen, um MFA-Funktionen hinzuzufügen.

Außerdem stehen moderne Alternativen bereit, die darüber hinaus noch viele weitere Funktionen hinsichtlich Komfort und Sicherheit hinzufügen. Microsoft positioniert Entra ID klar als Nachfolger für Active Directory. Daher gehen viele Unternehmen mittlerweile den Weg und binden ihre Anwendungen nicht mehr klassisch in das Active Directory, sondern an Entra ID an. Die Vorteile liegen auf der Hand:

  • Zugriffssteuerung über den bedingten Zugriff
  • Administration unter Beachtung von Prinzipien wie JIT (Just In Time, zeitgebundene Aktivierung von Berechtigungen) und JEA (Just Enough Administration, Verwendung der minimal notwendigen Berechtigungen)
  • Nutzung moderner Zugriffs- und Authentifizierungsprotokolle und -methoden (z.B. Windows Hello for Business, FIDO2-Sicherheitsschlüssel, usw.)

Benutzerdefinierte Attribute

Typischerweise nutzen Anwendungen für die Authentifizierung und Zuordnung von Benutzern die im Active Directory standardmäßig vorhandenen Attribute (z.B. sAMAccountName, memberOf, usw.). Was aber, wenn eine Applikation ursprünglich gar nicht für Active Directory entwickelt wurde? Dann nutzt sie ggf. völlig andere Attribute, die in Active Directory gar nicht vorhanden sind. Und in Entra ID schon gar nicht.

Was nun? Müssen solche Anwendungen dann komplett neu entwickelt oder umgebaut werden? Rhetorische Frage, einfache Antwort: nein! Stattdessen lassen sich Active Directory und Entra ID so anpassen, dass auch solche Attribute hinzugefügt und verwendet werden können. Das ist jedoch nicht ganz so trivial in der Umsetzung.

Daher zeigt dieser Beitrag einmal anschaulich an einem Beispiel, wie das funktioniert.

Beispielszenario: Modernisierung des Intranets

Beschreibung des Szenarios

Ein Unternehmen, bei dem ich unterstützen darf, verwendet eine Unix-basierte Intranet-Lösung. Dieses verwendete bislang ein eigenes LDAP-System mit speziellen Attributen für die Authentifizierung. Im Zuge einer Modernisierung sollte nun die Authentifizierung auf das Active Directory des Unternehmens geschwenkt werden. Zu einem späteren Zeitpunkt soll dann auch ein kompletter Schwenk auf Entra ID erfolgen können.

Das Intranet wird jedoch entgegen seiner Bezeichnung nicht ausschließlich intern, sondern auch für externe Zugriffe eingesetzt. Es mussten daher nicht nur die speziellen Attribute bereitgestellt, sondern auch zusätzliche Benutzer für die externen Produzenten und Lieferanten angelegt, konfiguriert und synchronisiert werden. Diese Benutzer sollten außerdem nicht die Domäne des Unternehmens, sondern eigene Domänen je nach Partnertyp verwenden.

Um die folgenden Ausführungen anschaulicher zu machen, definiert die folgende Tabelle einige Begrifflichkeiten:

BegriffKategorieBeschreibung
AgentPartnertypKategorisierung der neu anzulegenden Benutzer in unterschiedliche Bereiche und entsprechende Konfiguration des Anmeldenamens
SupplierPartnertypKategorisierung der neu anzulegenden Benutzer in unterschiedliche Bereiche und entsprechende Konfiguration des Anmeldenamens
activeBenutzerdefiniertes AttributKennzeichnung des Benutzer als "Aktiv/Aktiviert"
agentidBenutzerdefiniertes AttributVertreternummer
employeeofBenutzerdefiniertes AttributFirmennummer
tdssupplieridBenutzerdefiniertes AttributProduzent/Lieferant
tdssuppliersubidBenutzerdefiniertes AttributProduzentenkürzel
teamidBenutzerdefiniertes AttributVertretergebiet

Als Firmennamen verwendet dieser Artikel exemplarisch die Bezeichnung "Microwsoft". Die Anmeldedomäne des Unternehmens lautet entsprechend "microwsoft.de".

Schritt 1: Hinzufügen benutzerdefinierter Domänen

Damit sich die externen Benutzer sowohl an Active Directory als auch an Entra ID authentifizieren können, mussten zunächst zwei zusätzliche benutzerdefinierte Domänen hinzugefügt werden. Hierfür wurden der Einfachheit halber Subdomänen der bestehenden Anmeldedomäne gewählt:

  • agent.microwsoft.de
  • supplier.microsoft.de

Active Directory

In Active Directory werden diese wie folgt hinzugefügt:

  • Konsole "Active Directory-Domänen und -Vertrauensstellungen" aus den Verwaltungstools öffnen
  • Rechtsklick auf "Active Directory-Domänen und -Vertrauensstellungen" ausführen und "Eigenschaften" auswählen
  • Zusätzliche Suffixe nacheinander hinzufügen
  • Fenster mit "OK" schließen


Über PowerShell geht es etwas schneller:

# Active Directory-Gesamtstruktur ermitteln und neue Suffixe hinzufügen
Get-ADForest | Set-ADForest -UPNSuffixes @{add="agent.microwsoft.de","supplier.microwsoft.de"}
PowerShell

Entra ID

In Entra ID müssen diese dementsprechend auch hinzugefügt werden. Da dort bereits die übergeordnete Domäne existiert, muss die Domäne nicht wie üblich über einen TXT- oder MX-Eintrag validiert werden:


Über PowerShell geht es wie folgt:

# Notwendiges PowerShell-Modul installieren, falls noch nicht installiert
if (!(Get-InstalledModule Microsoft.Graph.Identity.DirectoryManagement -ErrorAction SilentlyContinue)){Install-Module Microsoft.Graph.Identity.DirectoryManagement -Scope CurrentUser}

# Zu Microsoft Graph verbinden
Connect-MgGraph -Scopes Domain.ReadWrite.All

# Neue Domänen in Entra ID hinzufügen
New-MgDomain -Id 'agent.microwsoft.de'
New-MgDomain -Id 'supplier.microwsoft.de'
PowerShell

Ab diesem Zeitpunkt können Benutzer im Active Directory mit einem Benutzerprinzipalnamen ausgestattet werden, der eine der oben genannten Domänen verwendet. Dieser wird nach Entra ID synchronisiert und kann dann auch dort zur Anmeldung verwendet werden.

Schritt 2: Hinzufügen der benutzerdefinierten Attribute

Nun müssen die benutzerdefinierten Attribute verfügbar gemacht werden.

Active Directory

Die Attribute müssen dem Active Directory-Schema hinzugefügt werden. Die hierfür benötigte Konsole ist jedoch aus Sicherheitsgründen standardmäßig nicht verfügbar und muss zuerst über die Kommandozeile oder PowerShell registriert werden:

regsvr32 schmmgmt.dll
BAT (Batchfile)

Anschließend kann ein neues MMC-Konsolenfenster über Eingabe von "mmc" im noch geöffneten Kommandozeilenfenster geöffnet werden. Hier kann dann das Snapin für das Active Directory-Schema über "Datei > Snap-in hinzufügen/entfernen..." entsprechend hinzugefügt werden.

Über die Konsole müssen dann die Attribute wie folgt hinzugefügt werden:

  • Rechtsklick auf den Ordner "Attribute" ausführen und "Attribut erstellen..." auswählen
  • Warnung bestätigen (Attribute können nicht mehr gelöscht werden)
  • Attributdaten gemäß Vorgaben aus anderer Umgebung befüllen
  • Schritte für weitere Attribute wiederholen
  • Zu "Klassen" wechseln
  • Aus der Liste die Klasse "user" heraussuchen und mit einem Doppelklick öffnen
  • Zum Register "Attribute" wechseln und die neuen Attribute im Bereich "Optional" hinzufügen
  • Alle Fenster mit "OK" schließen.


Hinweis: die eindeutige X500-OID muss individuell generiert werden. Microsoft hat hierfür ein Skript zur Verfügung gestellt, jedoch ist der offizielle Link nicht mehr funktionsfähig. Daher kann das Skript auch von meinem Skriptnest heruntergeladen werden. Nach Abschluss der Einrichtung sollte das Snap-In wieder deregistriert werden:

regsvr32 /u schmmgmt.dll
BAT (Batchfile)

Entra Connect Sync

Sind die Attribute bereitgestellt, muss als nächstes die Synchronisation zu Entra ID angepasst werden. Hierfür wird im Unternehmen Entra Connect Sync verwendet.

Falls Euer Unternehmen die Cloudsynchronisierung einsetzt, werden Verzeichniserweiterungen anders bereitgestellt. Microsoft beschreibt die Vorgehensweise hierzu in einem offiziellen Artikel: Verzeichniserweiterungen und benutzerdefinierte Attributzuordnungen für die Microsoft Entra-Cloudsynchronisierung - Microsoft Entra ID | Microsoft Learn

Schritt 1: Verzeichnisschema aktualisieren

Der Assistent ist hier im Prinzip nur durchzuklicken, es sind keine besonderen Schritte erforderlich. Dies liest die neuen Attribute in die Entra Connect Sync-Datenbank ein und ermöglicht die Synchronisierung der Attribute.

Schritt 2: Verzeichniserweiterungen-Attributsynchronisierung konfigurieren

  • Option "Synchronisierungsoptionen anpassen" auswählen
  • Bis zum Bereich "Optionale Features" durchklicken und den Haken bei "Verzeichniserweiterungen-Attributsynchronisierung" setzen
  • Im nächsten Fenster die neu angelegten Attribute hinzufügen
  • Assistenten abschließen

Nach Abschluss des Assistenten werden nun die Inhalte der neuen Attribute nach Entra ID synchronisiert.

Im Detail werden die neuen Attribute an die sogenannte "Tenant Schema Extension App" angehängt. Diese wird von Entra Connect Sync bei der Installation angelegt und für die Erweiterung der Attribute in Entra ID verwendet.

Schritt 3: Konfiguration der Unternehmensanwendung mit den neuen Attributen

In Entra ID muss für die Anwendung eine entsprechende Unternehmensanwendung angelegt werden. Dies wurde durch den Dienstleister der Anwendung bereits grundlegend vorbereitet. Innerhalb der Anwendung müssen die neuen Attribute entsprechend zugeordnet werden.

Das folgende Bild zeigt dies einmal exemplarisch für die Unternehmensanwendung beim Unternehmen:



Gefällt Dir der Beitrag? Lass es andere wissen!