For Office 365 first run: Script: Connect-Office365.ps1
if ($Office365 -ne "True") { Add-PSSnapin Microsoft.Exchange.Management.PowerShell.E2010 Add-PSSnapin Microsoft.Exchange.Management.PowerShell.Setup Add-PSSnapin Microsoft.Exchange.Management.Powershell.Support } Write-Host "******************************************************************************************************************" Write-Host "* Script zum Berechtigen von Benutzern auf Raum-Maiboxen *" Write-Host "******************************************************************************************************************" Write-Host "* Eingabe der Mailbox nach Name oder Parameter: *" Write-Host "* *" Write-Host "* Eingabe: many Es wird ein zusätzlicher Filter für den Namen abgefragt *" Write-Host "* Eingabe: all Es werden alle Mailboxen abgefragt! *" Write-Host "******************************************************************************************************************" Write-Host "* Mögliche Rollen: *" Write-Host "* *" Write-Host "* None FolderVisible *" Write-Host "* Owner CreateItems,ReadItems,CreateSubfolders,FolderOwner,FolderContact,FolderVisible, *" Write-Host "* EditOwnedItems,EditAllItems,DeleteOwnedItems,DeleteAllItems *" Write-Host "* PublishingEditor CreateItems,ReadItems,CreateSubfolders,FolderVisible,EditOwnedItems,EditAllItems, *" Write-Host "* DeleteOwnedItems,DeleteAllItems *" Write-Host "* Editor CreateItems,ReadItems,FolderVisible,EditOwnedItems,EditAllItems,DeleteOwnedItems, *" Write-Host "* DeleteAllItems *" Write-Host "* PublishingAuthor CreateItems,ReadItems,CreateSubfolders,FolderVisible,EditOwnedItems,DeleteOwnedItems *" Write-Host "* Author CreateItems,ReadItems,FolderVisible,EditOwnedItems,DeleteOwnedItems *" Write-Host "* NonEditingAuthor CreateItems,ReadItems,FolderVisible *" Write-Host "* Reviewer ReadItems,FolderVisible *" Write-Host "* Contributor CreateItems,FolderVisible *" Write-Host "* AvailabilityOnly View only availability data *" Write-Host "* LimitedDetails View availability data with subject and location *" Write-Host "******************************************************************************************************************" $Room = Read-Host "Geben Sie die Zielmailbox ein" $Language = Read-Host "Mailboxsprache (en/de)?" $Benutzer = Read-Host "Welchen Benutzer eintragen?" $Rolle = Read-Host "Welche Rolle zuweisen?" # Definition benötigter Parameter $Folder = "" # Sprache setzen if ($Language -eq "en") { $Folder = "Calendar" } elseif ($Language -eq "de") { $Folder = "Kalender" } else { Write-Host "Sprache nicht definiert!" } if (($Room -eq "many") -AND ($Folder -ne "")) { $Filter = Read-Host "Suchfilter für die Mailboxen" $rooms = Get-Mailbox -RecipientTypeDetails RoomMailbox | Where-Object { $_.name -match $Filter } ForEach ($mailbox in $rooms) { Add-MailboxFolderPermission $mailbox":\$Folder" -User $Benutzer -AccessRights $Rolle Write-Host $mailbox.name } } elseif (($Room -eq "all") -AND ($Folder -ne "")) { $rooms = Get-Mailbox -RecipientTypeDetails RoomMailbox ForEach ($mailbox in $rooms) { Add-MailboxFolderPermission $mailbox":\$Folder" -User $Benutzer -AccessRights $Rolle Write-Host $mailbox.name } } elseif ($Folder -ne "") { Add-MailboxFolderPermission $Room":\$Folder" -User $Benutzer -AccessRights $Rolle Write-Host $Room.name } Read-Host 'Press Enter to continue...' | Out-Null