endurance
Goto Top

Exchane 2016 - alle Kalender freigeben

Hallo zusammen

Ist es möglich, in einer Exchange 2016 umgebung die Kalender aller user untereinander freizugeben?
Und zwar nicht nur Standard (Frei/Gebucht-Zeit) sondern Frei/Gebucht-Zeit, Betreff, Ort?

So wie die Option im Outlook, ich will aber nicht jeden Outlook-Client konfigurieren müssen...

Content-ID: 344654

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

Ausgedruckt am: 25.11.2024 um 02:11 Uhr

YotYot
YotYot 27.07.2017 um 12:28:22 Uhr
Goto Top
Erstelle eine Powershell-Datei mit dem nachfolgenden Inhalt, den Du natürlich noch anpassen musst.
Die genauen Berechtigungen, die Du vergeben kannst, findest Du hier: technet.microsoft.com/de-de/library/ff522363%28v=exchg.160%29.aspx?f=255&MSPPError=-2147217396

Bei uns läuft ein solches Script (zugegebenermaßen etwas aufwändiger) jede Nacht per geplantem Task. Ist in diesem Fall ein 2013, müsste aber genauso funktionieren.

# Datei, in der später die Berechtigungen stehen, die am Ende ausgelesen wurden
write-output "" > D:\Ausgabe\Kalenderberechtigungen.txt  

# Zweimal die gleiche Abfrage in verschiedene Variablen, damit weiter unten die Schleife in der Schleife mit den gleichen Daten funktioniert
$mailboxes = Get-Mailbox | where {($_.organizationalunit -eq "[Exchange-Server]/OU")}  
$user = Get-Mailbox | where {($_.organizationalunit -eq "[Exchange-Server]/OU")}  

# Für jede Mailbox...
foreach ($mailbox in $mailboxes) {

# Standard und anonym organisieren
Add-MailboxFolderPermission -Identity ($mailbox.SamAccountName + ":\Kalender") -User Standard -AccessRights AvailabilityOnly  
Add-MailboxFolderPermission -Identity ($mailbox.SamAccountName + ":\Kalender") -User Anonym -AccessRights None  
Set-MailboxFolderPermission -Identity ($mailbox.SamAccountName + ":\Kalender") -User Standard -AccessRights AvailabilityOnly  
Set-MailboxFolderPermission -Identity ($mailbox.SamAccountName + ":\Kalender") -User Anonym -AccessRights None  

# Einzelne Gruppen berechtigen
Add-MailboxFolderPermission -Identity ($mailbox.SamAccountName + ":\Kalender") -User "[AD-Gruppe XY, z.B. GL]" -AccessRights ReadItems, CreateItems, EditOwnedItems, DeleteOwnedItems, EditAllItems, FolderVisible  
Set-MailboxFolderPermission -Identity ($mailbox.SamAccountName + ":\Kalender") -User "[AD-Gruppe XY, z.B. GL]" -AccessRights ReadItems, CreateItems, EditOwnedItems, DeleteOwnedItems, EditAllItems, FolderVisible  
Remove-MailboxFolderPermission -Identity ($mailbox.SamAccountName + ":\Kalender") -User "[AD-Gruppe XY, z.B. Vertrieb]" -confirm:$false  

# Manuell gesetzte Berechtigungen (darf ja jeder weiterhin in Outlook verbiegen) zurücksetzen
foreach ($user in $mailboxes) {
Remove-MailboxFolderPermission -Identity ($mailbox.SamAccountName + ":\Kalender") -User $user.SamAccountName -confirm:$false}  

# User mit expliziten Berechtigungen wieder hinzufügen (wurden ja vorher gelöscht)
Add-MailboxFolderPermission -Identity [Alias z.B. vorname.nachname eines GF] -User "[AD-Gruppe, z.B. GL]" -AccessRights ReadItems, CreateItems, EditOwnedItems, DeleteOwnedItems, EditAllItems, FolderVisible  
Set-MailboxFolderPermission -Identity [Alias z.B. vorname.nachname eines GF] -User "[AD-Gruppe, z.B. GL]" -AccessRights LimitedDetails  

# Tatsächliche Berechtigungen auslesen...
$calendar = (($mailbox.SamAccountName)+ ":\" + (Get-MailboxFolderStatistics -Identity $mailbox.SamAccountName -FolderScope Calendar | Select-Object -First 1).Name)  

# ... und in die Datei "Kalenderberechtigungen.txt" schreiben 
$output = "Postfach: " + $mailbox.Name  
write-output $output >> D:\Ausgabe\Kalenderberechtigungen.txt
$output = $mailbox.SamAccountName+":\Kalender" | Get-MailboxFolderPermission | fl User,AccessRights  
write-output $output >> D:\Ausgabe\Kalenderberechtigungen.txt
write-output " ---" >> D:\Ausgabe\Kalenderberechtigungen.txt  
}
133883
133883 27.07.2017 um 13:20:36 Uhr
Goto Top
YotYot
YotYot 27.07.2017 um 13:46:54 Uhr
Goto Top
Ich frage hier immer wieder mal was und hatte gerade die Gelegenheit, auch mal was zurück zu geben. Die habe ich genutzt face-wink