Berechtigungen von Azure Apps mit PowerShell auswerten

Viele Webdienste bieten die Möglichkeit sich mit einem Microsoft Konto anzumelden. Nutzt ein Anwender die Möglichkeit muss er dem Dienst je nach Anforderung div. Berechtigungen auf seine Daten geben, und es legt für den Dienst in Azure eine App an. Mit PowerShell lassen sich Berechtigungen solcher Apps auswerten.

Das Hinzufügen von Azure (Enterprise) Apps durch Anwender ist standardmässig aktiviert. Administratoren können es deaktivieren, das aber bei bestehenden Apps nachträglich Probleme verursachen kann. Im besten Fall klärt man das Thema bereits zu Beginn ab. Ist es aktiviert und ein Webdienst stellt die Möglichkeit bereit sich via Microsoft Konto anzumelden (anstatt ein neues Konto via Email + Passwort anzulegen) können Anwender ihr Unternehmenskonto für die Anmeldung bei dem Dienst einsetzen. Interne Entwickler können bei Bedarf selbst solche Apps erstellen.

Doodle ist zum Beispiel so ein Dienst. Anstatt ein neues Konto mit Email und Passwort anzulegen kann ein Microsoft Konto für die Anmeldung eingesetzt werden.

Mit einem Klick auf “Mit Microsoft anmelden” wird Doodle die Anforderung stellen Daten für den Microsoft Account abzufragen.

Wird die Anforderung bestätigt erstellt es in Azure unter Enterprise Apps die “Doodle AG” App.

In der App listet es unter Permissions die Übersicht welche Berechtigungen eine App hat und wie viele Benutzer die App einsetzen. Die Berechtigungen sind identisch wie es oben bei der Anforderung war.

Für einzelne Apps und Benutzer ist es über Azure möglich diese manuell auszuwerten. Möchte man alle bestehenden Apps auswerten ist es manuell ein langwieriger Task. Mit PowerShell wird die Zusammenfassung in kurzer Zeit erstellt.

Voraussetzungen

  • Azure AD PowerShell Modul
  • Der ausführende Account hat die Rolle Global Admin oder Application Admin

Ein paar Punkte zur Auswertung:

  • Das Property Oauth2Permissions in der App steht für den Berechtigungstyp Delegated. Apps mit Delegated Permissions können Daten begrenzt auf einen Benutzeraccount abfragen, und nicht für den ganzen Tenant. Im Normalfall fordern Webdienste bei ihren Apps Delegated Permissions.
  • Das Property AppRoles in der App steht für den Berechtigungstyp Application. Apps mit Application Permissions können im Tenant Daten aller Accounts abfragen. Oft sind die beiden Properties in PowerShell leer. Das macht nichts, es kann trotzdem ausgewertet werden.
  • Das Script wertet beide Berechtigungstypen aus.
  • Das Script inkludiert wie viele Accounts eine App einsetzen.
  • Die Auswertung exportiert es am Ende in den Pfad C:\Users\[Username]\Documents\AzureAppPermissions.csv. Mit Excel kannst du den Export filtern.

Share
Avatar-Foto

Tobias Asböck

Tobias ist ein Senior System Engineer mit rund 10 Jahren Berufserfahrung für Microsoft 365 Produkte wie SharePoint Online, OneDrive for Business, Teams Collaboration, Entra ID, Information Protection, Universal Print und Microsoft 365 Lizenzierung. Aus der Vergangenheit kennt er über einen Zeitraum von 15+ Jahren die Planung, Administration und den Betrieb von SharePoint Server Umgebungen. Tobias ist ein PowerShell Scripter mit Zertifizierungen für Microsoft 365 Produkte. In seiner Freizeit beschäftigt sich Tobias mit Aktualisierungen in der M365-Welt, ist mit seinem Rennvelo unterwegs und anderen sportlichen Aktivitäten beschäftigt. Bei Fragen kontaktiere mich über LinkedIn oder [email protected].

Schreibe einen Kommentar

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