2025-12-08
Managed Identity mit PowerShell für Microsoft Graph nutzen

Da Unternehmen zunehmend auf Microsoft 365 setzen, wird die Automatisierung von Verwaltungsaufgaben unverzichtbar. Durch die Integration von PowerShell + Graph API können Sie die Effizienz steigern und wertvolle Zeit sparen. Diese leistungsstarke Kombination erschließt robuste Verwaltungsfunktionen, die Abläufe vereinfachen.
Viele Anwender stoßen jedoch auf Herausforderungen. Beispielsweise fehlen für einige zentrale Funktionen dokumentierte Endpunkte, was die Automatisierung erschwert. Außerdem können veraltete APIs zu stillen Fehlern führen, was die Wartbarkeit Ihrer Skripte beeinträchtigt. Keine Sorge! Dieser Beitrag zerlegt diese komplexen Konzepte in einfache, umsetzbare Schritte und führt Sie mit klaren Lösungen durch den Prozess.
Die wichtigsten Erkenntnisse
- Integrieren Sie PowerShell mit Graph API, um Microsoft 365-Aufgaben zu automatisieren und die Effizienz zu steigern.
- Stellen Sie sicher, dass Ihr System die Voraussetzungen erfüllt, etwa PowerShell 7 oder höher und das aktuelle Microsoft Graph-Modul, damit die Ausführung reibungslos funktioniert.
- Verstehen Sie Berechtigungen und Scopes, um zu steuern, worauf Ihre Skripte in Microsoft 365 zugreifen können, und folgen Sie dem Prinzip der minimalen Rechte.
- Registrieren Sie Ihre App in Azure AD, um eine sichere Identität für Ihre Skripte zu schaffen, die einen sicheren Zugriff auf Microsoft Graph ermöglicht.
- Wählen Sie den passenden Authentifizierungsablauf, etwa Device Code Flow oder Managed Identity Flow, um Ihre Zugriffstoken wirksam abzusichern.
- Erstellen Sie wohlgeformte HTTP-Anfragen mit PowerShell, um über die Microsoft Graph API mit Daten zu interagieren.
- Behandeln Sie Fehler und API-Limits sorgfältig, damit Ihre Skripte reibungslos laufen und Störungen vermieden werden.
- Optimieren Sie Ihre Skripte durch gezieltes Abrufen von Eigenschaften und Bündelung von Anfragen (Batching), um die Leistung zu verbessern und den Ressourcenverbrauch zu senken.
Voraussetzungen für PowerShell + Graph API
Bevor Sie Microsoft 365-Aufgaben mit PowerShell + Graph API automatisieren, müssen Sie Ihr System und Ihre Umgebung richtig vorbereiten. Diese Vorbereitung sorgt für eine reibungslose Ausführung und einen sicheren Zugriff auf Microsoft Graph-Ressourcen.
Installieren der PowerShell-Module
Sie müssen die richtigen PowerShell-Module installieren, um mit der Microsoft Graph API zu interagieren. Das Microsoft Graph PowerShell SDK stellt alle notwendigen Cmdlets für diese Integration bereit. Prüfen Sie, ob Ihr System diese Mindestanforderungen erfüllt, um Fehler zu vermeiden:
| Anforderung | Beschreibung |
|---|---|
| PowerShell-Version | PowerShell Version 7 oder höher ist erforderlich. |
| .NET Framework | .NET Framework 4.7.2 oder neuer ist unter macOS notwendig. |
| PowerShellGet | Aktualisieren Sie PowerShellGet auf die neueste Version. |
| Ausführungsrichtlinie | Setzen Sie die Ausführungsrichtlinie auf RemoteSigned oder weniger restriktiv. |
Sie können PowerShellGet mit Install-Module PowerShellGet -Force aktualisieren und die Ausführungsrichtlinie mit Set-ExecutionPolicy RemoteSigned setzen. Installieren Sie danach das Microsoft Graph-Modul mit:
Install-Module Microsoft.Graph -Scope CurrentUser
Dieser Befehl lädt die neueste stabile Version des Moduls herunter, sodass Sie Microsoft Graph-Endpunkte einfach aufrufen können.
Einrichten der Microsoft 365-Umgebung
Die korrekte Konfiguration Ihrer Microsoft 365-Umgebung ist für die Automatisierung entscheidend. Gehen Sie für den Start wie folgt vor:
- Vergewissern Sie sich, dass Ihr System die Anforderungen erfüllt: PowerShell 7.2 oder neuer, .NET Framework 4.7.2 oder neuer und das aktuelle PowerShellGet-Modul.
- Installieren Sie das Microsoft Graph PowerShell-Modul wie oben gezeigt.
- Verbinden Sie sich mit Ihrem Microsoft 365-Mandanten, indem Sie das Modul importieren und sich mit den notwendigen Scopes authentifizieren. Zum Beispiel:
Connect-MgGraph -Scopes "User.ReadWrite.All","Directory.ReadWrite.All"
Dieser Befehl fordert Sie zur Anmeldung auf und gewährt Ihrer Sitzung Berechtigungen zum Lesen und Schreiben von Benutzer- und Verzeichnisdaten. Sie können die Scopes an Ihre Automatisierungsanforderungen anpassen.
Verstehen von Berechtigungen und Scopes
Berechtigungen und Scopes legen fest, worauf Ihre Skripte in Microsoft 365 zugreifen oder was sie ändern können. Die Microsoft Graph API verwendet zwei Hauptarten von Berechtigungen:
- Delegierte Berechtigungen: Diese gelten, wenn Sie Skripte als angemeldeter Benutzer ausführen. Sie begrenzen den Zugriff auf Daten, die der Benutzer besitzt oder auf die er zugreifen kann.
- Anwendungsberechtigungen: Diese erlauben es Ihrer App oder Ihrem Skript, unternehmensweit auf Daten zuzugreifen, ohne dass ein Benutzer angemeldet ist.
Gängige Berechtigungen sind *.Read.All für reinen Lesezugriff und *.ReadWrite.All für vollständige Lese- und Schreibrechte. So erlaubt SecurityActions.Read.All das Anzeigen von Sicherheitsaktionen, während SecurityActions.ReadWrite.All deren Änderung ermöglicht.
Anwendungsberechtigungen erfordern die Zustimmung eines Administrators. Ein Mandantenadministrator muss diese Berechtigungen genehmigen, um die Sicherheit zu gewährleisten. Außerdem benötigen Benutzer passende Microsoft Entra-Rollen, etwa Security Reader, um auf sensible Daten zuzugreifen. Dieser rollenbasierte Zugriff bietet eine zusätzliche Sicherheitsebene.
Wenn Sie sich über das Microsoft Graph PowerShell SDK verbinden, geben Sie nur die Scopes an, die Ihr Skript tatsächlich benötigt. Diese Praxis folgt dem Prinzip der minimalen Rechte und reduziert Sicherheitsrisiken. Beachten Sie, dass Berechtigungen, die Ihrer App gewährt wurden, für alle Benutzer dieser App gelten. Überprüfen und verwalten Sie diese daher regelmäßig.
Wenn Sie Berechtigungen sorgfältig verstehen und konfigurieren, schützen Sie Ihre Umgebung und ermöglichen gleichzeitig leistungsstarke Automatisierung mit PowerShell + Graph API.
App-Identität in Azure AD
Registrieren einer neuen App
Um Microsoft 365-Aufgaben mit PowerShell und Graph API zu automatisieren, müssen Sie zuerst eine Anwendung in Azure Active Directory (Azure AD) registrieren. Diese App fungiert als Identität, mit der Ihre Skripte sicher auf Microsoft Graph zugreifen. Gehen Sie zum Registrieren Ihrer App wie folgt vor:
- Öffnen Sie das Azure-Portal und navigieren Sie zu Azure Active Directory > App-Registrierungen > Neuregistrierung.
- Geben Sie Ihrer App einen aussagekräftigen Namen, etwa „My Graph App“.
- Wählen Sie die unterstützten Kontotypen:
- Single Tenant: Nur Benutzer in Ihrem Azure AD-Mandanten können sich anmelden.
- Multi-Tenant: Benutzer aus beliebigen Azure AD-Mandanten können sich anmelden.
- Multi-Tenant und persönliche Konten: Umfasst Azure AD-Benutzer und persönliche Microsoft-Konten.
Apple Podcasts · Spotify · YouTube · YouTube Music
Use Managed Identity with PowerShell for Microsoft Graph (English)