SendAs-Berechtigungen in Microsoft 365 ermitteln

Auch in Microsoft 365 – das frühere Office 365, sozusagen – gibt es die Möglichkeit, SendAs-Berechtigungen zu vergeben. Das kann aber unübersichtlich werden. Es ist aus diesem Grund nicht ganz ungeschickt, wenn sich Administratoren eines Microsoft 365 Tenants damit auseinander setzen, sich in regelmäßigen Abständen einen Überblick darüber zu verschaffen, wer wem auf welchem Postfach SendAs-Berechtigungen vergeben hat. Ich zeige mal kurz, wie das geht.

Wofür überhaupt SendAs-Berechtigungen?

Natürlich ist es vielen klar, wofür SendAs-Berechtigungen eigentlich gut sind. Aber dennoch muss man auch mal ein paar Worte darüber verlieren, wofür die eigentlich eingesetzt werden. Denn das geschieht meistens aus guten Gründen. Meistens handelt es sich bei einem Nutzer, der diese Berechtigung von einem anderen Nutzer erhält, um einen Vertreter oder meinetwegen die rechte Hand. Klassisches Beispiel sind die Sekretäre und Sekretärinnen.

Mit den SendAs-Berechtigungen ist es für die Vertretung möglich, Nachrichten aus dem jeweiligen Postfach zu versenden, ohne dass es einen Hinweis darauf gibt, dass die Vertretung die Nachricht geschickt hat. Allerdings kann die Vertretung nicht die Postfachinhalte sehen. Und wenn das jeweilige Postfach aus Adresslisten ausgeblendet wird, kann die Vertretung auch keine Nachrichten senden.

Es ist also wirklich eine Art Notfall-Vertretung oder halt die rechte Hand, wie ich es oben beschrieben habe. Ich habe während meiner Arbeit immer wieder mit Problemen rund um SendAs-Berechtigungen zu kämpfen. Und mit der Verbreitung von Office 365 – oder jetzt Microsoft 365 – sind die Probleme nicht wirklich kleiner geworden. Und da ist es gut, wenn man mal eine kleine Hilfestellung findet.

Wer gibt wem SendAs-Berechtigungen bei Microsoft 365?

Ja, es handelt sich hierbei um eine Fragestellung explizit zu Exchange Online. Hand hoch, wer aus dem Stehgreif weiß, wer wem welche Berechtigungen auf welches Postfach gegeben hat? Ich stelle mir da jetzt einfach mal eine Firma vor, die historisch gewachsen ist und um die 5000 Postfächer vielleicht hat. Diese Firma ist irgendwann in die Cloud „gewandert“. Tja, und nun haben wir einen ganzen Wildwuchs an Berechtigungen. Wie kommen wir da raus?

An Exchange Online andocken

Zunächst einmal müssen wir uns mit Exchange Online verbinden. Na klar, das machen wir mit der PowerShell. Das geht dann wie folgt:

$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/tenant-id -Credential (Get-Credential) -Authentication Basic -AllowRedirection
 
Import-PSSession $Session -DisableNameChecking

Wenn alles soweit funktioniert, sollte man eine Übersicht mit exportierten Befehlen sehen. Dann sind wir erfolgreich in unserem Tenant angemeldet.

Die Send- und SendAs-Berechtigungen ermitteln

Jetzt kommt der eigentliche Schritt. Wir ermitteln mit dem folgenden Befehl, wer die Send- und die SendAs-Berechtigungen hat.

Get-Mailbox -ResultSize Unlimited |
Get-RecipientPermission |
Where-Object {$_.Trustee -notlike "*self*"}

Wenn alles gut geht und wir uns nicht vertippt haben, dann finden wir als Ausgabe eine tabellarische Liste mit Postfächern, berechtigten Usern, Typ der Zugriffskontrolle, Zugriffsrechten und die Vererbung. Es werden nur die berechtigten User ausgeschlossen, die sich selbst berechtigen.

Das Ganze wird aber problematisch, wenn die Umgebungen groß sind. Der Befehl könnte hierbei abbrechen und damit keine vollständigen Ergebnisse liefern. Es wäre ungeschickt, wenn man nicht alle Postfächer mitsamt den SendAs-Berechtigungen ermitteln würde.

Neuerungen für Exchange Online

Microsoft war fleißig und hat demnach für Microsoft 365 speziell für Exchange Online neue Befehlssätze erarbeitet. Auf diese Art und Weise kann man Aufwand reduzieren und bessere Ergebnisse erzielen.

Anmelden in Exchange Online

Auch hier müssen wir uns zunächst anmelden. Das geht auch mit dem folgenden Befehlspärchen:

$UserCredential = Get-Credential
Connect-ExchangeOnline -Credential $UserCredential

Hierbei werden die Anmeldeinformationen erst in der Variable $UserCredential gespeichert. Mit dem zweiten Schritt wird die Verbindung aufgebaut, wenn kein MFA aktiviert ist.

Postfachberechtigungen abfragen

Ich würde ja einen ganzen Satz an Befehlen hernehmen. Ich denke mir, man kann es wie folgt lösen. Dabei orientiere ich mich an der oben gezeigten Lösung.

Get-EXOMailbox -ResultSize Unlimited |
Get-EXORecipientPermission |
Where-Object {$_.Trustee -notlike "*self*"}

Wie man sieht, handelt es sich um das gleiche Muster, um die SendAs-Berechtigungen zu ermitteln. Und damit sollte es meiner Meinung nach gehen, wenn man die neuen Befehle für Exchange Online benutzt. Die sind übrigens allesamt auf dieser Webseite aufgeführt und verlinkt. Microsoft nennt das Ganze „Exchange Online PowerShell v2“. Na, meinetwegen.

Schreibe einen Kommentar

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