Auslesen aller ‚Vollzugriffsberechtigungen‘ innerhalb der Exchange Organisation

The estimated reading time 2 minutes

Auslesen aller ‚Vollzugriffsberechtigungen‘ innerhalb der Exchange Organisation

Meistens werden im Laufe der Zeit Berechtigungen oftmals auch „Vollzugriff“ auf ein Postfach vergeben. Dies gerät dann bei fehlender Dokumentation in Vergessenheit. Der Benutzer meldet sich meistens auch nicht, sodass hier Berechtigungen entstehen, die eigentlich nicht erwünscht sind.

Mit Powershell lassen sich „Vollzugriffsberechtigungen“ auf Postfächer bequem auslesen oder auch in eine TXT Datei schreiben.

Der Befehl gibt eine Übersicht, auf welche Postfächer ein Vollzugriff gesetzt ist und wer das Recht bekommen hat.

$nbdomain = "NetBIOS-DOMAIN"
Get-Mailbox | Get-mailboxPermission | Where-Object { ($_.accessRights -like "*fullaccess*") -and -not ($_.User -like "nt-autorität\selbst") -and -not ($_.User -like "$nbdomain\Domänen-Admins")-and -not ($_.User -like "$nbdomain\Organisations-Admins") -and -not ($_.User -like "$nbdomain\Organization Management") -and -not ($_.User -like "$nbdomain\Administrator") -and -not ($_.User -like "$nbdomain\Exchange Servers") -and -not ($_.User -like "$nbdomain\Exchange Trusted Subsystem") -and -not ($_.User -like "nt-autorität\system")} | ft -AutoSize

Der Output ist simpel, unter Identity steht das Postfach welches einen Vollzugriff eingerichtet hat, unter User steht der Benutzer der den Vollzugriff als Recht erhalten hat

Wenn der Administrator im Einzeiler komplett entfernt wird, werden auch alle Berechtigungen des Administrators angezeigt.

Auf eine ähnliche Weise kann man sich die Berechtigungen „Senden als“ bzw. „Senden im Auftrag von “ anzeigen lassen:

Get-Mailbox | Get-ADPermission | where {($_.ExtendedRights -like '*Send*') -and -not ($_.User -like "NT-AUTORITÄT\SELBST")}  | Format-Table -Auto Identity,User,Deny,ExtendedRights
Vollzugriffsberechtigung

In meiner Umgebung mit ca. 80 Benutzern dauerte der Befehl bei mir etwas länger, also nicht verzweifeln. Lasst die Powershell einfach werkeln.

Zu guter Letzt möchte man dann auch noch wissen, wer die Berechtigung „Senden im Auftrag“ von englisch „send on behalf“  zugewiesen hat.

Get-Mailbox | Where-Object {$_.GrantSendOnBehalfTo -ne $null} | fl DisplayName,Alias,Identity,GrantSendOnBehalfTo
Vollzugriffsberechtigung

Dies sind die meist vergebenen Berechtigungen und können mit diesen drei mehr oder minder einfachen Befehlen abgefragt werden und natürlich auch in eine TXT Datei ausgegeben werden.

Ich hoffe ich konnte eine kleine Hilfestellung zu dem Thema Vollzugriff, Senden als, Senden im Auftrag von geben.

Viel Spaß beim Testen, freue mich über Kommentare.

Was this article helpful?
YesNo
0 0 votes
Article Rating
Subscribe
Notify of
guest
7 Comments
Newest
Oldest Most Voted
Inline Feedbacks
View all comments
Sebastian
Sebastian
8 months ago

Dieser Befehl ist Gold wert- vielen Dank. Wir müssen hin und wieder Auskunft geben, welcher Benutzer wo Zugriff hat. Wäre es auch möglich die Abteilung mit ausgeben zu lassen? Dann könnte ich das entsprechend filtern. Das Feld „Abteilung“ ist im Exchange immer gefüllt.

JW
JW
2 years ago

Sehr gut aufbereitet – vielen Dank für die Mühe!!!

trackback
3 years ago

[…] habt ihr meinen alten Artikel über das Auslesen der Vollzugriffsberechtigungen auf einem lokalen Exchange gelesen und fandet […]

CBa
CBa
4 years ago

Vielen Dank,
funktioniert wirklich gut.
In einer Domäne mit 500 Adressen, ca. 2 Minuten .

Powershell-noob
Powershell-noob
5 years ago

Hallo Danke für die Befehle. Könnten Sie die befehle ergänzen für die ausgabe als txt?

Vielen dank!