Entra ID Automation: Entra ID Gruppe automatisch erstellen und Entra Rolle zuweisen

In vielen Umgebungen startet alles mit „wir automatisieren das schnell mit PowerShell“. Und genau hier passieren die klassischen Fehler: die Gruppe wird erstellt, aber danach kann keine Rolle zugewiesen werden, weil die Gruppe nicht als Security Principal geeignet ist.

Wenn du entra id automation sauber umsetzen willst (Gruppe erstellen und danach eine entra id role assignment durchführen), musst du beim Erstellen der Gruppe die richtigen Eigenschaften setzen:

  • securityEnabled = true (Security Group / Security Principal)
  • und für Entra Directory Roles auf Gruppen in der Praxis: isAssignableToRole = true (Role-Assignable Group).

Microsoft zeigt diesen Ansatz ebenfalls: Eine role-assignable security group wird mit securityEnabled: true und isAssignableToRole: true erstellt.


Warum securityEnabled = true so wichtig ist

Entra Directory Roles werden an Security Principals gebunden. Wenn deine Gruppe nicht securityEnabled ist, scheitert die „Rolle zuweisen“-Automatisierung typischerweise, weil die Gruppe nicht im richtigen Kontext als Zielobjekt für Rollenmanagement genutzt werden kann.

Darum: Wenn du von „Gruppe erstellen“ direkt weiter zu „Entra Rolle zuweisen“ automatisieren willst, erstelle die Gruppe als Security Group (securityEnabled=true) und – für Directory Roles auf Gruppen – als role-assignable (isAssignableToRole=true).


Die Graph-API Bausteine

  • Gruppe erstellen: POST <https://graph.microsoft.com/v1.0/groups>
  • Rollenzuweisung erstellen: POST /roleManagement/directory/roleAssignments (unifiedRoleAssignment)

Berechtigungsseitig nennt Microsoft u. a. Group.ReadWrite.All für das Erstellen der Gruppe und RoleManagement.ReadWrite.Directory für rollenbezogene Operationen.

Zusätzlich dokumentiert Microsoft, dass (delegiert) Privileged Role Administrator die least-privileged Entra Rolle für das Erstellen von Role Assignments ist.


Vollständiges PowerShell Script: Gruppe erstellen + Entra Rolle zuweisen


<#
Entra ID Automation: Role-Assignable Security Group erstellen und Entra Directory Role zuweisen
Voraussetzung: Microsoft Graph PowerShell SDK
#>

# ---------------------------
# 0) Voraussetzungen / Module
# ---------------------------
# Install-Module Microsoft.Graph -Scope CurrentUser
Import-Module Microsoft.Graph.Groups
Import-Module Microsoft.Graph.Identity.Governance

# ---------------------------
# 1) Verbindung zu Microsoft Graph
# ---------------------------
$scopes =@(
"Group.ReadWrite.All",
"RoleManagement.ReadWrite.Directory",
"Directory.Read.All"
)

Connect-MgGraph-Scopes$scopes

# ---------------------------
# 2) Parameter definieren
# ---------------------------
$groupDisplayName ="PIM-Helpdesk-UserAdmin"
$groupDescription ="Role-assignable security group managed by automation"
$mailNickname     = ("pimhelpdesk" + (Get-Random-Maximum9999))

# Gewünschte Entra Directory Role (Beispiele: "User Administrator", "Groups Administrator")
$roleDisplayName  ="User Administrator"

# ---------------------------
# 3) ROLE-ASSIGNABLE SECURITY GROUP erstellen
# ---------------------------
$params =@{
  description        =$groupDescription
  displayName        =$groupDisplayName
  mailEnabled        =$false
  mailNickname       =$mailNickname
  securityEnabled    =$true
  isAssignableToRole =$true
}

$group =New-MgGroup-BodyParameter$params
Write-Host"Gruppe erstellt:"$group.DisplayName" ("$group.Id")"

# ---------------------------
# 4) Role Definition ID ermitteln
# ---------------------------
$roleDefinition =Get-MgRoleManagementDirectoryRoleDefinition-Filter"displayName eq '$roleDisplayName'"

if (-not$roleDefinition) {
throw"Role Definition nicht gefunden für displayName: $roleDisplayName"
}

Write-Host"Rolle:"$roleDefinition.DisplayName" ("$roleDefinition.Id")"

# ---------------------------
# 5) Entra Rolle der Gruppe zuweisen (Tenant-weit)
# ---------------------------
$assignmentParams =@{
  principalId      =$group.Id
  roleDefinitionId =$roleDefinition.Id
  directoryScopeId ="/"
}

$assignment =New-MgRoleManagementDirectoryRoleAssignment-BodyParameter$assignmentParams
Write-Host"Rolle zugewiesen. Assignment Id:"$assignment.Id

# ---------------------------
# 6) Ergebnis ausgeben
# ---------------------------
[PSCustomObject]@{
  Gruppenname       =$group.DisplayName
  GruppenId         =$group.Id
  Rollenname        =$roleDefinition.DisplayName
  RoleDefinitionId  =$roleDefinition.Id
  DirectoryScopeId  ="/"
  RoleAssignmentId  =$assignment.Id
}

Die entscheidenden Punkte:

  • Gruppe wird über /groups erstellt und setzt explizit securityEnabled und isAssignableToRole.
  • Die Rollenzuweisung wird als unifiedRoleAssignment über Role Management erstellt.

Von Automation zu Governance: warum PIM der nächste Schritt ist

Skripte lösen Provisioning – aber Governance (Genehmigungen, JIT, Ablaufzeiten, Audits) kommt meist als nächstes. Microsoft beschreibt PIM genau mit dem Ziel, „standing admin access“ zu reduzieren und privilegierten Zugriff zu steuern.


Entdecke unsere hybride au2mator PIM Lösung

Wenn du Entra Rollen und On-Prem AD Rollen in einem Portal verwalten und zeitlich begrenzen willst (hybrid), schau dir unsere Lösung an:

au2mator Privileged Identity Management (PIM)

Do more with au2mator!

Self-Service portal with three automation engines

Similar articles

Microsoft 365 Lizenzverwaltung: Formular Lizenz zuweisen im au2mator Self-Service Portal mit den Aktionen Zuweisen, Ändern und Zurückholen

Microsoft 365 Lizenzverwaltung mit automatisierter Zuweisung und Rücknahme

Jede Microsoft 365 Lizenz wird irgendwann von Hand zugewiesen. Neuzugänge warten, Teamleiter öffnen Tickets für Power BI, Abgänge behalten ein E3, an das sich niemand ...

Hardware chargeback to cost centres: a My Billing view showing devices and amount per cost centre in the au2mator Self-Service Portal, instead of an annual spreadsheet

Hardware Chargeback: IT-Kosten transparent auf Kostenstellen verteilen

Die Verteilung von Hardwarekosten auf Kostenstellen erfolgt in vielen Unternehmen noch immer über aufwendige Excel-Tabellen. Das erschwert die Nachvollziehbarkeit und führt häufig zu verspäteten Korrekturen. ...
Intune automation: a Retire device request form in the au2mator Self-Service Portal with Sync, Retire and BitLocker key services, no admin rights needed

Intune Automation: Geräteverwaltung mit PowerShell automatisieren

Microsoft Intune automatisiert bereits viele Aufgaben der Geräteverwaltung. Dennoch müssen Helpdesk-Teams zahlreiche Anfragen weiterhin manuell bearbeiten. Mit Intune Automation und Microsoft Graph PowerShell lassen sich ...

8 Wege zum Ruinieren deiner Azure Automation