Modern Public Folder Rechte
Diese Seite beschreibt eine vermutlich nicht allen Administratoren und Firmen bekannte Standardberechtigung mit Exchange öffentlichen Ordnern.
Auslöser
Ein Kunde hat einen neuen "Top Level Folder" angelegt und in Outlook bzw. per ECP nach seinen Vorgaben berechtigt.
Um so überraschter war er, dass der neue Ordner, der hier nur für die Mitglieder der Gruppe "FCGROUP1" erreichbar sein sollte, für alle Mitarbeiter sichtbar war.
In Outlook Web App musste ich den Ordner natürlich erst einmal addieren, denn hier werden die Ordner nicht mehr standardmäßig angezeigt.
Allerdings werden hier keine Berechtigungen angezeigt. In Outlook sehe ich aber auch nicht viel.
Rechte in PowerShell
Ein Blick mit der Exchange PowerShell zeigte dann die kompletten Berechtigungen:
[PS] C:\>Get-PublicFolderClientPermission -Identity "\pf1" FolderName User AccessRights ---------- ---- ------------ PF1 Default {Author} PF1 Anonymous {None} PF1 fcgroup1 {PublishingEditor}
Auf den neuen Ordner, auf dem im ECP nur die Gruppe zu sehen ist, hat Anonymous zwar keine Rechte aber die Standardrechte sind "Author". Damit ist auch klar, dass jeder in der Firma damit den neuen Ordner nicht nur sieht, sondern sogar darin mitarbeiten kann.
Diese Recht wurde bei der Anlage des Ordners von dem Root-Folder vererbt aber kann weder per ECP noch per Outlook gesehen oder entfernt werden. Ich habe extra eine Exchange-Umgebung mit einer neuen Public Folder Hierarchie aufgebaut.
# Anlage einer neuen und ersten PublicFolder Mailbox [PS] C:\>New-Mailbox PF -PublicFolder Name Alias ServerName ProhibitSendQuota ---- ----- ---------- ----------------- PF PF ex01 Unlimited # Anzeige der Standardrechte des Root-Folders [PS] C:\>Get-PublicFolderClientPermission -Identity "\" FolderName User AccessRights ---------- ---- ------------ IPM_SUBTREE Default {Author} IPM_SUBTREE Anonymous {None} # Anzeige der Standardrechte eines neuen Ordners, ehe die Gruppe "fcgroup1" addiert wurde [PS] C:\>Get-PublicFolderClientPermission -Identity "\pf1" FolderName User AccessRights ---------- ---- ------------ PF1 Default {Author} PF1 Anonymous {None}
Im ECP kann man natürlich auch die Standardrechte des Root-Ordners anzeigen.
Aber auch der Administrator sieht hier die Default-Rechte nicht. Sie müssen also schon wissen, dass "Default:Author" hat.
Rechte zum Rechte anzeigen
Ich habe mir dann doch mal die "Besitzer" Rechte auf dem Ordner PF1 gegeben:
Add-PublicFolderClientPermission ` -Identity "\pf1" ` -User adm-fcarius ` -AccessRights owner
Dann hat Outlook auch alle anderen Rechte korrekt angezeigt.
Ich bin nicht sicher aber bei früheren Exchange Versionen ist mir das so nicht aufgefallen. Ich dachte, sich sehe auch mit weniger Rechten zumindest, wer neben mir noch berechtigt ist.
Das bedeutet aber auch für den Stammordner:
"ReadItems", "EditOwnedItems", "DeleteOwnedItems", "EditAllItems", "DeleteAllItems", "FolderVisible"
Umsetzung der Rechte
Die Berechtigungen der Ordner sind eine Kombination aus mehreren Einzelrechten. Über die GUI können Sie vordefinierte Rechte einstellen.
Wenn Sie sich die Mühe machen, diese rechte mal aufzuschlüsseln, bekommen Sie folgende Matrix. Denken Sie daran, dass z.B. "DeleteAllItems" natürlich auch "DeleteOwnedItems" mit einschließt, obwohl in der GUI dies nicht angekreuzt ist. Es ist aber das umfassendere Recht.
Rolle | PS-Rolle | ReadItems |
CreateItems |
EditOwnedItems |
DeleteOwnedItems |
DeleteAllItems |
EditAllItems |
CreateSubfolders |
FolderOwner |
FolderContact |
FolderVisible |
---|---|---|---|---|---|---|---|---|---|---|---|
Besitzer |
Owner |
||||||||||
Veröffentlichender Bearbeiter |
PublishingEditor |
||||||||||
Bearbeiter |
Editor |
|
|||||||||
Autor |
Author |
|
|||||||||
Keine |
None |
||||||||||
Veröffentlichender Autor |
PublishingAuthor |
||||||||||
Mitwirkender |
Contributor |
||||||||||
Prüfer |
Reviewer |
||||||||||
Nicht bearbeitender Autor |
NonEditingAuthor |
Alle anderen Kombinationen werden als "Benutzerdefiniert" angezeigt. Als Parameter bei "Add-PublicFolderClientPermission" können Sie entweder eine der acht vordefinierten Rollen nutzen oder die Berechtigungen einzeln addieren.
# Vergabe von Rechten anhand der vordefinierten Rollen Add-PublicFolderClientPermission -Identity "\pf1" -User fcgroup1 -AccessRights author # Vergabe ueber eigene Zusammenstellung Add-PublicFolderClientPermission -Identity "\pf1" -User fcgroup1 -AccessRights ReadItems,CreateItems
Eine Kombination von Rollen und Einzelrechten geht nicht:
[PS] C:\>Add-PublicFolderClientPermission -Identity "\pf1" -User fcgroup1 -AccessRights author,DeleteAllItems Cannot bind parameter 'AccessRights' to the target. Exception setting "AccessRights": "The access rights of a mailbox folder can't contain both specific permissions and precanned roles."
Bei den eigenen Zusammenstellungen sollten Sie natürlich sichergehen, dass die Rechte einen Sinn ergeben. Wenn z.B. Standard die "Autoren"-Rechte geben aber explizit nur als FolderOwner aufgeführt werden, dann addiert Exchange automatisch das Recht "FolderVisible"
[PS] C:\>Get-PublicFolderClientPermission -Identity "\pf1" FolderName User AccessRights ---------- ---- ------------ PF1 Default {Author} PF1 Anonymous {FolderVisible} PF1 adm-fcarius {FolderOwner, FolderVisible}
Das ist in Outlook auch sichtbar und ich kann als Besitzer auch die Rechte des Ordners ändern.:
Ich kann mich sogar selbst entfernen. Ich kann aber keine neuen Elemente anlegen.
Sonderfall "Folder Visible"
Zudem gibt es noch eine Sache mit "Folder visible". Aus der Tabelle sehen Sie, dass Sie durchaus einen Eintrag mit dem Recht "Kein" anlegen können, aber der Benutzer oder die Gruppe dennoch das Recht hat, Ordner zu sehen. Sie könnten natürlich sagen, dass man den ACL-Eintrag besser löscht, wenn er eh keine Rechte hat aber damit ist damit ist auch das Flag "Folder Visible" verbunden. Wenn das Fehlt, kann können die ansonsten mit "keine" versehenen Rechte den Order gar nicht sehen und damit ist auch der Weg zu den Unterordnern verbaut.
Wenn Sie daher in Outlook nicht den Eintrag komplett löschen sondern nur das Recht auf "keine" setzen, dann bleibt die Checkbox in "Folder Visible" aktiv. Unstimmig wird es aber nun in der Powershell. Wenn Sie dort die Rechte wie folgt setzen, dann wird das "Folder Visible" nicht gesetzt.
Add-PublicFolderClientPermission "\Ordnername" –User username –AccessRights None
Dann haben wir wirklich einen ziemlich unsinnigen ACL-Eintrag. Sie sollten dann mindestens folgendes machen
Add-PublicFolderClientPermission "\Ordnername" –User username –AccessRights FolderVisible
Der Benutzer oder die Gruppe kann dann den Ordner sehen, damit er auch Unterordner mit den entsprechenden Berechtigungen erreichen kann aber sieht keine Elemente in dem Ordner selbst. Das erinnert mich etwas an die Funktion "Access Based Enumeration" bei Datenhaltung auf Dateiservern.
- Add-PublicFolderClientPermission
https://learn.microsoft.com/en-us/powershell/module/exchange/add-publicfolderclientpermission?view=exchange-ps
Ergebnis
Wenn Sie Exchange mit öffentlichen Ordnern neu einführen, dann sollten Sie als erstes die Berechtigungen auf dem Basisordner auf ihre Anforderungen anpassen. Dass jeder Benutzer ihres Exchange Servers eigenständig neue öffentliche Ordner anlegen kann, war schon in früheren Versionen so und ich habe auch damals eine Änderung empfohlen.
Auch damals konnte jeder Anwender neue Ordner anlegen, wenn der Administrator dies nicht beschränkt. Daher rate ich auch bei den "Modern Public Foldern" diese Einstellung so anzupassen, dass "Standard" auch keine Berechtigungen mehr hat und vielleicht eine Gruppe oder der Provisioning-Prozess nur die erforderlichen Berechtigungen erhält. Der kann dann auch bei den neu angelegten Ordnern der ersten Hierarchiestufe dafür sorgen, dass "Standard" nicht gleich wieder die Lese-Berechtigungen bekommt und damit Informationen von eigentlich nicht berechtigten Personen gelesen werden können.
Schade ist, dass zumindest in meiner Umgebung weder der Administrator per ECP noch der Benutzer in Outlook die Berechtigungen von "Standard" oder "Anonym" einsehen oder ändern konnten, wenn sie nicht "Besitzer" waren. Eine Kontrolle durch den Anwender selbst ist damit nicht möglich.
Tipp: Bestimmen Sie immer einen "Besitzer" eines Ordners und weisen Sie ihn darauf hin, dass er umgehend die Berechtigungen so setzt, wie er es wünscht.
Weitere Links
- Public Folder Management
- Exchange 2013 - Public Folder
- Öffentliche Ordner - Clientzugriff
- Öffentliche Ordner - Eigenschaften
- Öffentliche Ordner - Berechtigungen
- Get-MailboxFolderPermission
https://docs.microsoft.com/de-de/powershell/module/exchange/get-mailboxfolderpermission?view=exchange-ps - How to access a public folder via OWA
(Exchange 2016)
https://support.sherweb.com/Faqs/Show/how-to-access-a-public-folder-via-owa-exchange-2016 - Using PowerShell to set Custom Access Rights on a Calendar Does not set
Free/Busy Permissions
https://social.technet.microsoft.com/Forums/lync/en-US/97b11f45-2fa6-4477-8fc9-d11d776a33ef/using-powershell-to-set-custom-access-rights-on-a-calendar-does-not-set-freebusy-permissions?forum=exchangesvradmin - Exchange Online - Calendar Permissions with a Group for all UserMailboxes
http://blog.icewolf.ch/archive/2020/10/23/exchange-online-calendar-permissions-with-a-group-for-all-usermailboxes.aspx - Using security groups to set calendar permissions does not work in an
Exchange resource forest
https://support.microsoft.com/en-us/topic/using-security-groups-to-set-calendar-permissions-does-not-work-in-an-exchange-resource-forest-86d65464-9f5c-96c4-4afb-8b9af644e31b - How to retain folder permissions after restoring/migrating public folders
with CodeTwo software
https://www.codetwo.com/kb/public-folders-permissions/#powershell