How to set read and write access to a shared calendar in Office 365

Problem: How to give a user read and write access to a shared calendar in Office 365

Solution: Use powershell scripts to change Office365 Active Directory entries. See steps below:

A shared calendar is initially set up by a user so it is necessary to know who set it up i.e. who owns it, and also know what it is called.

1) If you are not using Windows 8.1 then Go to and click on the link install Microsoft Online Services Sign-In Assistant for IT Professionals RTW, then on the same webpage click on the link to install the Windows Azure Active Directory Module (select 32-bit or 64-bit depending on your O/S)

2) On Windows 8.1 run Powershell as Administrator or on your PC launch Windows Azure Active Directory Module for Windows Powershell – ensure you select “run as Adminstrator”. When the powershell command window opens enter the following commands:

Set-ExecutionPolicy RemoteSigned

$LiveCred = Get-Credential (this command will cause a dialog box prompting you to enter your administrator-level Office 365 user id and password)

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

Import-PSSession $Session

import-module MSOnline

Connect-MsolService -Credential $LiveCred

The command to set all users passwords to never expire is:

Get-MailboxFolderStatistics user1 | fl folderpath > folders.txt

user1 is the userid of the person who set up the shared calendar. Note that if the full user id is then the user1 is john.doe

The file folders.txt will be placed in your folder c:\users\your_PC_userid on the PC you are using. This file will tell you the name of the shared calendar(s) for the user1

We are not proposing the use of the command Get-MailBoxfolder … -GetChildren as it usually fails due to permission issues.

The syntax of the command to add read/write permissions to user2 for a shared calendar owned by user1:

add-MailboxFolderPermission -Identity user1:\calendar\secondcalendar -AccessRights PublishingEditor -User user2

Example of this command could be:

add-MailboxFolderPermission -Identity gavin.dixon:\calendar\”CassiniCloud Events Dates” -AccessRights PublishingEditor -User jenni.dixon

No Comments Yet.

Leave a Comment