Exchange Online: Set default calendar sharing permissions for all users

In a new Exchange (Online) environment you might want to change the default calendar sharing permissions for all users. By default the sharing permissions for the entire organization are set to “Can view when I’m busy”.

Some companies have a different wish on the default calendar settings of their users. The preferred setting might be “Limited details”. This will show just the headlines and location of the calendar.

If you try to open an invite, it will notify that you do not have access.

So, what options do we have? From the Outlook app you can see that there are 5 options to choose from. (See screenshot below)

From PowerShell we have the following options for the default permissions:

  • AvailabilityOnly: View only availability data
  • LimitedDetails: View availability data with subject and location


With just a few steps we will set the permissions for the default permissions on all folders.

STEP 1: Connect to Exchange Online

$UserCredential = Get-Credential

$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri -Credential $UserCredential -Authentication Basic -AllowRedirection
Import-PSSession $Session 

STEP 2: Run the following command to change the permissions for all users to LimitedDetails.

foreach($user in Get-Mailbox -RecipientTypeDetails UserMailbox) {
 $cal = $user.alias+":\Calendar"
 Set-MailboxFolderPermission -Identity $cal -User Default -AccessRights LimitedDetails

One Reply to “Exchange Online: Set default calendar sharing permissions for all users”

  1. Great script!

    Q: How can I set change this permanently? We don’t want user to be able to change their settings in Outlook.
    Also new users should get this by default.

Leave a Reply

Your email address will not be published. Required fields are marked *