alienone7700
Goto Top

Exchange 2016 Kalenderberechtigung des Default Users ändern für alle Mailboxen

Guten Tag,

wie kann ich bitte bei einen Exchange - Server 2016 per Powershell die Berechtigungen des Standard Users für Kalender ändern auf z.B. Author für alle Mailboxen.
Ich habe schon ein paar Scripte getestet, aber es funktioniert nicht.
Die Meldung bei Scripten oder Befehlen, die eigentlich funktionieren sollen kommt die Meldung: "WARNUNG: Der Befehl wurde erfolgreich ausgeführt, es wurden jedoch keine Berechtigungen von 'XXXXXX/Benutzer/XXXX:\Kalender' geändert.

z.B.

Set-MailboxFolderPermission -Identity User:\Kalender -User default -AccessRights Author

Content-Key: 667235

Url: https://administrator.de/contentid/667235

Printed on: April 23, 2024 at 12:04 o'clock

Member: Inf1d3l
Inf1d3l Jun 01, 2021 updated at 10:38:47 (UTC)
Goto Top
Was zeigt denn Get-MailboxFolderPermission an?

Wenn nix, sollte man Add-MailboxFolderPermission benutzen.
Member: AlienOne7700
AlienOne7700 Jun 01, 2021 at 10:46:51 (UTC)
Goto Top
Get-MailboxFolderPermission zeigt beim Kalender an, dass der Default User keine Berechtigung hat.
Ich will aber, dass der Default User des Kalenders jeder Mailbox die Berechtigung "Author" hat.
So kann dann jeder User bei den Kalender eines anderen einsehen und Objekte hinzufügen.
Ich finde keinen Befehl oder Script , das bei mir funktioniert.
Member: AlienOne7700
AlienOne7700 Jun 01, 2021 at 11:28:54 (UTC)
Goto Top
Wenn ich diesen Befehl ausführe:

Get-mailbox | ForEach-Object { SET-MailboxFolderPermission -Identity $_":\Kalender" -User Default -AccessRights Author }

Wird mir das zurückgemeldet:

WARNUNG: Der Befehl wurde erfolgreich ausgeführt, es wurden jedoch keine Berechtigungen von 'xxx.local/xx
xxx/Benutzer/xxxxx:\Kalender' geändert.

Mache ich aus SET - ADD wird mir das gemeldet:

Für den Benutzer wurde ein vorhandener Berechtigungseintrag gefunden: Standard.
Mitglied: 148121
148121 Jun 01, 2021 updated at 13:19:03 (UTC)
Goto Top
Du musst hier die Lokalisation der Ordner in den Mailboxen berücksichtigen, denn beim einen kann es wenn diese auf Englisch eingerichtet hat "Calendar" heißen und beim deutschen eben "Kalender" face-wink
Machst du so
Get-Mailbox | %{Set-MailboxFolderPermission "$($_.Alias):\$(Get-MailboxFolderStatistics $_.Alias -FolderScope Calendar | ?{$_.Foldertype -eq 'Calendar'} | select -F 1 -Expand Name)" -User Default -AccessRights Author}  
WARNUNG: Der Befehl wurde erfolgreich ausgeführt, es wurden jedoch keine Berechtigungen von 'xxx.local/xx
xxx/Benutzer/xxxxx:\Kalender' geändert.
Das besagt einfach nur das bei diesem bestimmten Nutzer keine Änderung vollzogen wird weil die Berechtigung eben bei diesem User schon genau so wie gewünscht vorliegt, ist also kein Fehler nur eine Warnung an den Nutzer face-wink.

Btw. guckst du auch
Exchange Einführung - Kalender aller User untereinander freigeben und hinzufügen

Mache ich aus SET - ADD wird mir das gemeldet:
Add kannst du hier vergessen, die Standard-Einträge kannst du selbst nicht via Add hinzufügen, da diese zwingend immer vorhanden sind und sich auch nicht via Remove- entfernen lassen. Diese müssen also zwingend via SET gesetzt werden !

Gruß w.
Member: AlienOne7700
AlienOne7700 Jun 01, 2021 at 12:48:46 (UTC)
Goto Top
Hallo Danke für die Hilfe.
Das mit dem Kalender und Englisch habe ich berücksichtigt.

Ich habe als Test einen Enzelbebefehl für ein Postfach abgesetzt:
Der Test - Account soll bei allen Kalendern die Berechtigung Autor erhalten.

Get-mailbox | ForEach-Object { SET-MailboxFolderPermission -Identity $_":\Kalender" -User Test -AccessRights Author }

Bei einigen Kalendern steht Autor und bei vielen anderen wiederum nur Reviewer.

Die Berechtigungen werden nicht überall gesetzt.

Welcher Befehl oder welches Script funktioniert?
Mitglied: 148121
148121 Jun 01, 2021 updated at 12:58:30 (UTC)
Goto Top
Das mit dem Kalender und Englisch habe ich berücksichtigt.
In deinem Code aber nüscht von zu sehen! Jede Mailbox kann hier eine andere Sprache haben, das ist in meinem Code oben berücksichtigt.
Welcher Befehl oder welches Script funktioniert?
Funktionsfähioger Code s. mein letzter Kommentar, funktioniert hier fehlerfrei!
Die Berechtigungen werden nicht überall gesetzt.
Grund-Voraussetzung ist das der Account der dies durchführt auch die entsprechende Postfachmanagement RBAC Rolle inne hält oder Impersonation Rechte auf der Mailbox besitzt! Wenn er also nicht genügend Rechte hat kann dieser die Rechte auch nicht ändern. That's by design and works as intended!
Member: AlienOne7700
AlienOne7700 Jun 01, 2021 at 13:12:30 (UTC)
Goto Top
Ich benutze beim Befehl "Kalender" , weil Calendar nicht funktioniert.

Get-Mailbox | ForEach-Object {set-MailboxFolderPermission $_":\Kalender" -User test -AccessRights Author }

Mein Ziel wäre eigentlich gewesen, den Default User auf Author einzurichten. face-smile

Die Powershell wurde mit den Domänen - Admin Account gestartet.
Mitglied: 148121
148121 Jun 01, 2021 updated at 13:20:28 (UTC)
Goto Top
Zitat von @AlienOne7700:

Ich benutze beim Befehl "Kalender" , weil Calendar nicht funktioniert.
Siehe meinen Code oben, der ermittelt das für jede Mailbox automatisch zuverlässig face-smile.
Mein Ziel wäre eigentlich gewesen, den Default User auf Author einzurichten. face-smile
Genau das tut mein Code ja oben ... einfach mal den Code lesen oder warum muss ich das hier 20 mal wiederholen, hast du den übersehen??
Die Powershell wurde mit den Domänen - Admin Account gestartet
Heißt gar nichts, ein Domänen-Admin ist nicht automatisch Mitglied der entsprechend privilegierten Exchange-Gruppen für die Postfachwartung!
Grundlagen lesen wäre hier mal angesagt:
Exchange Server Berechtigungen
RBAC - Role Based Access Control
Member: AlienOne7700
AlienOne7700 Jun 01, 2021 at 13:37:31 (UTC)
Goto Top
Danke, aber der Code funktioniert nicht. Es kommt die Meldung, dass keine Änderungen durchgeführt wurden.
Jedoch bleibt der Standard User bei den Kalendern auf der Standard Berechtigung stehen.

Danke für die Grundlagen, aber die haben wir schon berücksichtigt.

Es funktioniert ja alles am Server. Ich kann jegliche Berechtigung per Powershell machen, aber eben das mit dem Kalender nicht.

Ich habe ein Ticket bei Microsoft eröffnet. Der soll sich das mal per Fernwartung anschauen.

Danke.
Member: AlienOne7700
AlienOne7700 Jun 01, 2021 at 13:50:32 (UTC)
Goto Top
Jetzt auf einmal passt es.
Jetzt steht bei jeden Kalender User Standard AccessrRights Author.

Get-Mailbox | %{Set-MailboxFolderPermission "$($_.Alias):\$(Get-MailboxFolderStatistics $_.Alias -FolderScope Calendar | ?{$_.Foldertype -eq 'Calendar'} | select -F 1 -Expand Name)" -User Default -AccessRights Author}

Ich liebe Dich. face-smile
Mitglied: 148121
148121 Jun 01, 2021 updated at 13:57:25 (UTC)
Goto Top
Zitat von @AlienOne7700:

Danke, aber der Code funktioniert nicht. Es kommt die Meldung, dass keine Änderungen durchgeführt wurden.
Jedoch bleibt der Standard User bei den Kalendern auf der Standard Berechtigung stehen.
Wenn diese Meldung von oben
WARNUNG: Der Befehl wurde erfolgreich ausgeführt, es wurden jedoch keine Berechtigungen von 'xxx.local/xxxxx/Benutzer/xxxxx:\Kalender' geändert.
kommt dann wurde es erfolgreich angewendet nur war die Berechtigung schon so gesetzt wie das Skript sie setzen sollte.
Jedoch bleibt der Standard User bei den Kalendern auf der Standard Berechtigung stehen.
Denke das ist eher ein Cache-Anzeigeproblem, warte mal etwas ab.

Es funktioniert ja alles am Server. Ich kann jegliche Berechtigung per Powershell machen, aber eben das mit dem Kalender nicht.
Dann check mal die Permissions auf der betroffenen Mailbox mittels Get-MailboxPermission. Evt. eine Verweigerung gesetzt oder Mailbox ACL defekt.

Jetzt auf einmal passt es.
Jepp war zu erwarten face-smile.
Ich liebe Dich. face-smile
Lass das nicht meine besser Hälfte hören, da ist dann ne Woche Sofa angesagt... face-big-smile

Dann bitte noch auf gelöst setzen How can I mark a post as solved?

Gruß w.
Member: AlienOne7700
AlienOne7700 Jun 01, 2021 at 14:04:58 (UTC)
Goto Top
Hallo. face-smile

Noch ne kurze Frage.

Bei den Clientrechnern ist der Cache-Modus an.
Im Cache - Modus werden die Berechtigungen nicht überall übertragen. Im Online Modus kann ich sofort die Berechtigungen in den Kalendern setzen .

Soll ich alle Clients neu synchronisieren lassen? OST-Datei lokal löschen?
Mitglied: 148121
148121 Jun 01, 2021 updated at 20:26:54 (UTC)
Goto Top
Zitat von @AlienOne7700:
Bei den Clientrechnern ist der Cache-Modus an.
Im Cache - Modus werden die Berechtigungen nicht überall übertragen. Im Online Modus kann ich sofort die Berechtigungen in den Kalendern setzen .

Soll ich alle Clients neu synchronisieren lassen? OST-Datei lokal löschen?
Nein ist nicht nötig. Ab- und Anmelden genügt in der Regel bzw. Senden-Empfangen einmal betätigen. Wenn nicht war mit dem Profil schon was nicht ganz koscher, in dem Ausnahmefall kann das dann helfen, cached Mode aus, OST löschen und wieder an.
Member: AlienOne7700
AlienOne7700 Jun 02, 2021 at 10:02:18 (UTC)
Goto Top
Danke Herzbube. face-smile