Set Reviewer permissions to All Users on All Calendars


A lot of companies would like to open their calendar for all employees.

The script below updates all calendars (multilingual) to give Reviewer permissions to all mailboxes.

#Set default as reviewer for all calendars. 
foreach($mbx in Get-Mailbox -ResultSize Unlimited | where-object {$_.displayname -notmatch "discovery"}) {
    $calendars = (Get-MailboxFolderStatistics $mbx.Identity -FolderScope Calendar).Identity -replace "\\", ":\"
    foreach($calendar in $calendars) {
        $allset = Get-MailboxFolderPermission $calendar -User Default | Where { $_.AccessRights -eq "Reviewer" }
        if ($allset -eq $null) {
            Set-MailboxFolderPermission -Identity $calendar -User Default -AccessRights Reviewer
        }
    }
}