You need to give a single user access to all other user’s calendars in Office 365.
- Launch a PowerShell session and connect to Office 365
- If you’re going to be doing this for more than 1 user, you may want to get a list of calendars instead of calling the Get-Mailbox cmdlet everytime:
$calendars = ( Get-Mailbox | ForEach-Object ( $a=$_.identity; $a+”:calendar”}
- You’ll need to use the Add-MailboxFolderPermission cmdlet to update the permissions. So, to give the user “test.user” rights to create events on everyone’s calendars:
$calendars | ForEach-Object ( $a; Add-MailboxFolderPermission -Identity $a -User “test.user” -AccessRights PublishingAuthor)
A couple of notes about the last command there:
- If the user already has some permission to the target calendar, Add-MailboxFolderPermission will throw an exception rather than just update the permissions. The loop above prints the name of the calendar before it attempts to add the permission so that I can tell which calendars failed and investigate why. You will either need to remove the existing permissions with the “Remove-MailboxFolderPermission” cmdlet or update them using the “Set-MailboxFolderPermission” cmdlet.
- There are several possible values for the -AccessRights switch; run “Get-Help Add-MailboxFolderPermission -detailed” for a list.