Set, check and remove Calendar sharing permissions in Office 365 with PowerShell

Now that PowerShell works pretty well on macOS, including remote sessions to Office 365, I'm able to use it a lot more for administering client tenancies in...

Now that PowerShell works pretty well on macOS, including remote sessions to Office 365, I’m able to use it a lot more for administering client tenancies in the cloud.

One common task is to set the default sharing on a new user’s calendar to let everyone else in the organisation view all details, instead of just free/busy information.

For all my PowerShell remote sessions to Office 365, I have saved a script that will perform the initial connection, and it goes something like this:

$UserCredential = Get-Credential

$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $UserCredential -Authentication Basic -AllowRedirection

Import-PSSession $Session

This will prompt you for the admin credentials for your Office 365 tenancy and then establish a remote connection. Once you’re authenticated, you can execute commands that run against the Office 365 servers.

To set the default calendar sharing on a user’s calendar to provide everyone with Reviewer status, simply run the following command:

Set-MailboxFolderPermission [email protected].:\calendar -User Default -AccessRights Reviewer

This changes the default sharing permissions for all users to Reviewer (can see all event details, but can’t change anything).

To give a another user a different level of access, instead of Set-MailboxFolderPermission, you need to use Add-MailboxFolderPermission, e.g.:

Add-MailboxFolderPermission [email protected]:\calendar -User [email protected] -AccessRights Editor

Once the user’s permission has been added with Add-MailboxFolderPermission version of the command, then you can make any required changes with Set-MailboxFolderPermission.

You can then check the permissions on anyone’s calendar like so:

Get-MailboxFolderPermission [email protected]:\calendar

Last, but not least, you can remove a user’s permissions on a calendar via:

Remove-MailboxFolderPermission [email protected]:\calendar -user “Full Name”

Or, via their email address:

Remove-MailboxFolderPermission [email protected]:\calendar -user [email protected]

Keep This Useful

Spotted something outdated or unclear?

If a step has changed, a screenshot no longer matches, or something here just does not work the way it should, get in touch and we will take a look.