Graph ApplicationAccessPolicy

Inhaltsverzeichnis
  1. Exchange
  2. Andere App
  3. Weitere Links

Wenn Sie eine App mit Graph-Zugriff entwickeln, dann müssen Sie nicht nur eine App mit ClientID und ein ClientSecret im Tenant registrieren sondern auch Berechtigungen zuweisen. Das kann als "Delegate" oder über Application Permissions gehen. Beim "Delegate-Zugriff" läuft die App im Anmeldekontext des Anwenders, z.B. als JavaScript im Browser. Wenn Sie einen automatisierten Zugriffe in Form eines "Dienstskontos" nutzen, dann sind die Rechte erst einmal "auf den gesamten Tenant" vergeben.

Exchange

Bei Exchange bedeutet das, dass eine App als Service auf alle Postfächer zugreifen kann. Das ist ist so nicht wünschenswert. Es ist nur zu verständlich, das eine Firma eine Beschränkung des Zugriffs auf eine Gruppe von Postfächern für die jeweilige Application einrichten möchte.

Eine App kann durchaus die Rechte zur Pflege der Termine bei den Mitarbeitern im Service bekommen, um damit eine Einsatzplanung zu steuern. Auch der Versand von Mails "als Anwender" kann ein gültiger Anwendungsfall sein. Aber die App sollte dann auch nur mit einer Teilmenge der Adressen senden können. Wem das zu viel ist, sollte sich die Funktion "ApplicationAccessPolicy" einmal genauer anschauen. Damit kann ein Administrator eine App anhand der GUID auf eine Gruppen von Anwendern beschränken:

# Anlegen einer Policy und Zuweisung an eine Gruppe
# Hinweis: Es kann durchaus eine Stunde oder länger dauern, bis dies aktiv wird.
New-ApplicationAccessPolicy `
   -AppId <guid der app> `
   -PolicyScopeGroupId <Mailadresse oder Identity einer Gruppe> `
   -AccessRight RestrictAccess `
   -Description "Restrict this app to members of distribution group."

Achten Sie aber darauf, dass dies eine Filterfunktion von Exchange ist, die den Zugriff über Graph zusätzlich kontrolliert.

Bei Exchange werden nur folgende Rechte geprüft:

Mail.Read
Mail.ReadBasic
Mail.ReadBasic.All
Mail.ReadWrite
Mail.Send
MailboxSettings.Read
MailboxSettings.ReadWrite
Calendars.Read
Calendars.ReadWrite
Contacts.Read
Contacts.ReadWrite

Andere App

Wenn sie nun erwarten, dass es ähnliche Möglichkeiten auch z.B. bei SharePoint, Teams und all den anderen per Graph erreichbaren Datentöpfen gibt, dann muss ich Sie enttäuschen. Eine solche Filterung von Zugriffen habe ich für andere Dienste noch nicht gesehen.

Diese Information kann sich täglich ändern. Wenn Sie irgendwo eine neue Information gefunden haben, dann senden Sie mir doch einen Link

Weitere Links