MICROLINC - Probleme suchen Lösung
Zurück   Home

PowerShell - Vererbung Exchange Postfachordnerberchtigung

  -  03.07.2013 - 20:45
Menü

Home
Microsoft Small Business Server 2011 Standard
Hardware
Windows
MS Office
Projekte

Mehrwertsteuerrechner

Gästebuch

Pingtool

Warenwirtschaft

Password Expiration Reminder

Java Update Disabler

Briefkopf in PDF kombinieren FreePDF

Microsoft Exchange Management Shell Skripte

Permission Propagation to Subfolder of Inbox (PPSI)

Skript für Postfachberechtigung über AD-Gruppe

remove blocked ActiveSync-Devices (rem_bDevice)

Remove ActiveSync Device user & global-context

Active-Sync Devices sortierter Report

Remove unlinked ActiveSync Devices from CASMailbox

php-Tipps

3G-Failover Lösungen (mit Webserveranbindung & Exchange)

KeepProcessAlive

ActiveSync User und Devices über Active Directory auslesen

PowerShell SMTP Client TLS Tester

PowerShell Postfix Transport Log Parser

Auslesen der Allow-List aus KEMP-Loadbalancer via PowerShell

Backup Script Stotax-Datenbanken nach Hidrive

PowerShell - Active Directory Schema GUIDs und Ldap-Namen

Support
Download
Peripherie
Sonstiges (Off-Topic)
Telefonie
Windows 8
Windows Mobile
Security-Software
DATEV
Virtualisierung Oracle virtualbox
nginx
Kryptographie
hMailServer
Android
Novell
Exchange
Server 2012 R2
AD Certificate Service (PKI) / Zertifizierungsstelle
System Center
Blackberry
Microsoft Flow
Virtualisierung Microsoft Hyper-V
Ubiquiti
3CX
OneDrive
PowerShell
Azure
HAProxy
Defender
Teams
ESET Protect
BookStack


 
Autor:Thomas Windscheif last edit:28.07.2024 17:26

Link zu diesem Beitrag:


[Druckansicht]

Exchange
permission propagation
subfolder permission propagation
mailboxfolder permission propagation
Vererbung Postfachordnerberechtigung

getestet unter:
Exchange Server 2019
Exchange Online (Stand 07/2024)

Rekursive Vererbung der Postfachberechtigungen von Posteingang in den Unterordnern unter Exchange 2010/2013/2016 /2019 und Exchange Online mittels Exchange (Online) Management Shell

Mit diesem Skript ist es möglich die unter Posteingang vergebenen Rechte automatisch auf untergeordnete Ordner zu vererben. Man benötigt hierfür weder ExFolders noch explizite Besitzrechte auf das Postfach, sie müssen dieses Skript lediglich als Exchange-Administrator (Mitgliedschaft in der Gruppe "Organization Management") auf dem Exchange-Server ausführen. Es sind keine weiteren Änderungen nötig, keine Tools keine DLLs, einfach mit Boardmitteln.

Zum Download

Zuerst hoffte ich mit folgendem Skript einfach Rechte verteilen zu können (was wohl auch mal ging):
Get-MailboxFolder –Identity username:\Posteingang -Recurse | Add-MailboxFolderPermission -User user2 -AccessRights Owner

Leider geht es nicht (mehr). Es erscheint folgender Fehler:

Das angegebene Postfach "[...]" ist nicht vorhanden
+ CategoryInfo : NotSpecified: (0:Int32) [Get-MailboxFolder], ManagementObjectNotFoundException
+ FullyQualifiedErrorId : C74849A8,Microsoft.Exchange.Management.StoreTasks.GetMailboxFolder


siehe http://community.office365.com/en-us/forums/158/t/43423.aspx

Anschließend schrieb ich das Skript für die Exchange-Management-Shell.

Zur Funktion des Skripts
  1. Es fragt zuerst die notwendigen Variablen ab:
    • Soll gelöscht oder hinzugefügt werden?

    • Welches Postfach soll bearbeitet werden?

  2. Anschließend liest es mittels des cmdlets get-mailboxfolderpermission die vorhandenen Benutzer und deren Rechte aus und übergibt diese in ein Array

  3. Nun wird via cmdlet Get-MailboxFolderStatistics die Ordnerstruktur unter Posteingang rekursiv (also auch alle Unterunterordner etc.) ausgelesen und ebenfalls in ein Array gelegt.

  4. In einer Schleife werden nun die einzelnen Pfäde abgefragt und mittels cmdlet Add-MailboxFolderPermission die Rechte der jeweiligen Benutzer die vorher gespeichert wurden angewendet bzw. entfernt wenn löschen gewählt wurde.

  5. Positiv-Meldungen werden grün angezeigt Fehlermeldungen 1:1 rot in original angezeigt.



Anwendung des Skripts (ab Version 3.0) 28.07.2024
Das Skript wurde nun nochmal nach einiger Zeit für den Betrieb unter Exchange Online und Exchange Server 2019 überarbeitet.
Hinzugekommen ist nun auch die Vererbung von Berechtigungen ab der obersten Ebene des Postfachs. Außerdem gibt es nun Parameter für Ordner- und Ordnertypausnahmen. Auch die lokalisierten Standard-Berechtigungen "ANONYM" und "Standard" lassen sich nun über einen Parameter festlegen. Das Verbose-Logging wurde nochmal erweitert. Im Falle eines Fehlers bitte immer erst mit dem Schalter "-Verbose" das Script debuggen.

Die Batchdatei als Wrapper ist im Archiv noch vorhanden, empfohlen wird aber nun die Nutzung des Skriptes in einer bestehenden und authentifizierten Exchange PowerShell-Session.

  • Exchange Online und Exchange Server 2019 Kompatibilität wiederhergestellt

  • Berechtigungen von der obersten Ebene des Postfachs können nun vererbt werden

  • Postfachordnerausnahmen können nun definiert werden

  • Ausnahmen für Postfachodertypen können nun definiert werden

  • Lokalisierte Standardberechtigungsgruppen können nun als Parameter übergeben werdne


Anwendung des Skripts (ab Version 2.0)
Das komplette Script wurde überarbeitet. Variablen werden jetzt über den bei PowerShell üblichen Param-Block abgefragt. Ebenso werden die Berechtigungen nun statt über den fehleranfälligen FolderPath über die FolderID gesetzt. Dadurch gibt es keine Probleme mehr mit Sonderzeichen im Ordnernamen.
Das Skript verfügt über einen detaillierten Beschreibungsheader, alle Parameter (Get-Help -Parameter) sind jeweils beschrieben.
  • Die Berechtigungen einzelner Benutzer können rekursiv entfernt werden

  • Vorhandene Berechtigungen können automatisch ersetzt werden.

  • Alle vorherigen Funktionen sind enthalten

  • Verbose-Schalter für Debugging-Zwecke integriert.

  • Berechtigungen können ab einer beliebigen Ebene vererbt werden.


Zum Download




Für Vererbung von Berechtigungen im Ordner Posteingang verwenden Sie das Skript mit einer Version vor Version 1.3. Das Skript ab Version 1.3 vergleicht alle Ordner der Mailbox mit dem angegebenen Wert, weswegen die Ausführung länger dauert. Ab Version 1.3 können Ordner in der obersten Ebene ausgewählt werden oder bestimmte Ordner unter den Topfoldern, wenn man z. B. nur Berechtigung von einem bestimmten Ordner unter Posteingang vererben möchte.

Anwendung des Skripts (ab Version 1.3)
  • Laden Sie das ppsi_skript als ZIP-Archiv herunter (siehe Ende des Textes)

  • Extrahieren (!) Sie die beiden Dateien in einen beliebigen Ordner

  • Setzen Sie die Berechtigungen für die neu zugreifenden Benutzer im Ordner "Posteingang" wie gewöhnlich über Outlook (oder über das cmdlet Add-MailboxFolderPermission).

  • Bearbeiten Sie die ps1-Datei und geben Sie in der Zeile 15 für die Variable MBXRootFolder den Folder an, dessen Berechtigungen für vererbt werden sollen:


    Sie können hier Ordner auf der obersten Ebense angeben (z. B. Posteingang, Gesendete Elemente) oder Objekte unter den Root-Objekten (z. B. Posteingang\gummibär)

  • Öffnen Sie anschließend die Batchdatei "start_ppsi_script_msx.cmd" auf dem Exchange-Server (Sie müssen als Administrator angemeldet sein (Mitglied in der Gruppe "Organization Management")), alternativ können Sie das Skript auch direkt aus der Exchange Management Shell aufrufen
    (Navigieren Sie hierzu via cd in den entsprechenden Ordner und geben Sie dann ".\permission_propagation_subfolder_inbox.ps1" ein.)

  • Die Batchdatei prüft wo die Exchange-Installation liegt (C:, D:), öffnet dann die Powershell mit Exchange-Modul und startet dann das eigentliche Skript



  • In der ersten Abfrage können Sie entweder "h" oder "l" eingeben für hinzufügen oder löschen.

  • In der zweiten Abfrage geben Sie den Kontonamen des Benutzers an, dessen Postfach bearbeitet werden soll.


  • Das Skript geht nun wie unter "Zur Funktion des Skripts" beschrieben vor

  • Am Ende der Ausführung des Skripts drücken Sie eine beliebige Taste zum Schließen des Fensters


Sie können das Skript auch automatisiert ablaufen lassen, füllen Sie dazu einfach die Variablen in der .ps1-Datei mittels Notepad aus.

Anwendung des Skripts (bis Version 1.21)
  • Laden Sie das ppsi_skript als ZIP-Archiv herunter (siehe Ende des Textes)

  • Extrahieren (!) Sie die beiden Dateien in einen beliebigen Ordner

  • Setzen Sie die Berechtigungen für die neu zugreifenden Benutzer im Ordner "Posteingang" wie gewöhnlich über Outlook (oder über das cmdlet add-mailboxfolderpermission).

  • Öffnen Sie die Batchdatei "start_ppsi_script_msx.cmd" auf dem Exchange-Server (Sie müssen als Administrator angemeldet sein (Organization Management)), alternativ können Sie das Skript auch direkt aus der Exchange Management Shell aufrufen
    (Navigieren Sie hierzu via cd in den entsprechenden Ordner und geben Sie dann ".\permission_propagation_subfolder_inbox.ps1" ein.)

  • Die Batchdatei prüft wo die Exchange-Installation liegt (C:, D:), öffnet dann die Powershell mit Exchange-Modul und startet dann das eigentliche Skript


  • In der ersten Abfrage können Sie entweder "h" oder "l" eingeben für hinzufügen oder löschen.

  • In der zweiten Abfrage geben Sie den Kontonamen des Benutzers an, dessen Postfach bearbeitet werden soll.


  • Das Skript geht nun wie unter "Zur Funktion des Skripts" beschrieben vor

  • Am Ende der Ausführung des Skripts drücken Sie eine beliebige Taste zum Schließen des Fensters


Sie können das Skript auch automatisiert ablaufen lassen, füllen Sie dazu einfach die Variablen in der .ps1-Datei mittels Notepad aus.

Das Skript habe ich auf meinem Exchange-Server (2010) ausgiebig getestet und konnte keine Fehler feststellen. Sollten Sie Fehler feststellen oder Wünsche haben schreiben Sie mir bitte einen Kommentar. Sollten Sie das Skript erfolgreich (oder auch nicht erfolgreich) auf einer neueren Exchange-Umgebung getestet haben, würde ich mich über Feedback via Commentbox freuen.

UPDATE:
Version 2.1:
+ Postfachordner werden nun nicht mehr Case sensitiv verglichen
+ Das Berechtigungs-Array wird nun vorher einmal "leer" initialisiert
Version 2.0:
+ Vollständig überarbeitet
+ PARAM-Block und Verbose-Mode integriert
+ Ersetzen integriert
Infos zur Version 2.0
Version 1.3:
+ Es können nun auch Ordner in der obersten Ebene der Mailbox ausgewählt werden, ebenso können Unterordner von root-Ordnern ausgewählt werden
UPDATE:
Version 1.21:
+ Ordner mit dem Zeichen "/" im Namen werden nun fehlerfrei bearbeitet
UPDATE:
Version 1.2:
+ Die Variable ExchangeInstallPath wird nun zum identifizieren des Exchange-Installationsordners verwendet
UPDATE:
Version 1.1:
+ Nun werden neben der Stufenrechte auch die benutzerdefinierten Rechte verteilt.

aktuelle Downloads







Download
-> Inherit-MailboxFolderPermissionV3.zip (Version 3.0) ~ 5 KB
Inherit-MailboxFolderPermissionV2.2.zip (Version 2.2) ~ 3,27 KB
Inherit-MailboxFolderPermissionV2.1.zip (Version 2.1) ~ 3,52 KB
Inherit-MailboxFolderPermissionV2.zip (Version 2.0) ~ 3,16 KB
permission_propagation_subfolder_inbox_v1.3.zip (Version 1.3) ~ 2,03 KB
permission_propagation_subfolder_inbox_v1.21.zip (Version 1.21) ~ 2,02 KB
permission_propagation_subfolder_inbox_v1.2.zip (Version 1.2) ~ 1,73 KB
permission_propagation_subfolder_inbox_v1.1.zip (Version 1.1) ~ 1,70 KB
permission_propagation_subfolder_inbox.zip (Version 1.0) ~ 1,66 KB



Über den Autor
Thomas Windscheif arbeitet bei excITe Consulting und ist langjähriger Berater im Bereich IT-Infrastruktur und Groupware. Sowohl Kleinunternehmen z. B. im Handwerk als auch der größere fertigende Mittelstand gehören zu seinem Projektumfeld. Im Wesentlichen gehören die Planung von Infrastruktur-Migrationen, Cloud-Lösungen (Microsoft 365), Groupware-Umgebungen (z. B. Exchange) und deren Umsetzung zu seinen Aufgaben. Insbesondere im Umfeld hybrider Identitätsumgebungen mit Entra Connect und den Möglichkeiten zur Härtung der IT-Landschaft konnte er in vielen Projekten Erfahrungen sammeln. Neues begeistert ihn aber ebenso und so unterstützt Thomas Windscheif auch bei themenfremden IT-Systemen, überall da wo er helfen kann.

Sein Ziel: Die Mehrwerte der heutigen IT-Lösungen für einfacheres und modernes Arbeiten beim Kunden einbringen.


Login


QuickTag:  

 
Sie haben ein ungelöstes Problem in Ihrer Exchange Server oder Microsoft-Infrastruktur?
Treten Sie gerne mit mir in Kontakt. Sowohl bei einfachen Exchange Installationen, als auch bei hochverfügbaren, lastverteilten Mehrstandort-DAG-Topologien mit Loadbalancern unterstütze ich Sie -auch kurzfristig- sehr gerne.

Nutzen Sie den Live Chat, xing, LinkedIn, das Kontaktformular oder den Mailkontakt

[News als RSS-Feed abonnieren]
News

vom 22.09.2024 - 14:29


- Spontaner Administrationsverlust unter Exchange Online - Und wie man es behebt! -

Zweimal in diesem Jahr hatte ich bei Kunden das Phänonem, dass spontan bestimmte Administrationsrechte unter Exchange Online fehlten, trotz der Rollenmitgliedschaft "Globaler Administrator" bzw. "Exchange Administrator".

Aus ungeklärten Gründen waren verschiedene RBAC-Rechte unter Exchange Online für "Organization Management" spontan verschwunden.

Im folgenden Artikel löse ich das Problem mit Skripten und erläutere das Vorgehen

https://www.microlinc.de/index.php?lev1=25&lev2=41&id=475


Weitere News:

UPDATE - PowerShell Exchange Vererbung Postfachordnerberechtigungen


vom 28.07.2024 17:18


Safe Sender List unter Outlook leeren - Praktische Umsetzung


vom 06.11.2023 18:05


Exchange Online Protection und die Safe Sender List


vom 26.10.2023 15:06


Exchange Online - Abschaltung Remote PowerShell Session (RPS)


vom 25.08.2023 14:37


Tool zum Konvertieren von Agfeo-Adressbüchern nach 3CX


vom 01.05.2023 16:47


Das Ende der Standardauthentifizierung - Wie bereite ich mein Unternehmen vor?


vom 03.08.2022 15:19


Sharepoint-Kalender unter Team freigeben


vom 17.07.2022 17:41


Exchange Update HAFNIUM-Exploit


vom 09.03.2021 09:27


Windows Server 2019 - LDAP out of memory exception


vom 16.09.2019 17:48


3CX V16 Call Control API mit PowerShell Core


vom 25.04.2019 11:41


Exchange Online SMTP TLS Report


vom 15.02.2019 18:04


TLS-Test für SMTP mit PowerShell


vom 10.12.2018 11:47


3CX Secure SIP via DIRECT-STUN mit yealink T46S


vom 08.09.2018 15:35


Exchange 2016 CU10


vom 25.06.2018 15:21


Apple iCloud Addin stört Outlook Kalenderfunktionen


vom 18.10.2017 13:24


.NET 4.7 released - Bitte nicht auf Exchange Servern installieren


vom 13.06.2017 21:52


Troubleshooting Exchange Health Manager Sensoren


vom 16.05.2017 21:06


Exchange 2016 - ActiveSync-Lesebestätigungen können nun unterdrückt werden


vom 09.03.2017 18:28


Exchange - Informationen an Dritte einschränken


vom 20.02.2017 01:53



[alle News auflisten]
Sitemap - Kontakt - Datenschutz & Disclaimer - Impressum