[2 days left] What’s wrong with your cloud strategy? Learn why multicloud solutions matter with Nimble Storage.Register Now


Push Exchange user shared calendars to all mailboxes

Posted on 2014-04-07
Medium Priority
Last Modified: 2014-04-29
Ok Exchange 2010 guru's, I have a challenge. The President of my company wants everyone to share their calendars and either give full view, restricted, or just show free/busy depending on who they are. This is the easy part.

We want all users to have everyone's calendars showing in groups, by department (calendar group) in outlook's calendar view. The challenge is this: I would like to be able to execute an EMS command that will be able to copy the settings from one mailbox to another, or simply write a command that will add all of the user's shared calendars to each mailbox calendar view. Or any other way to automate the process rather than manually adding all calendar groups, and calendars to each mailbox through outlook logged in as that user.

Our HR Manager had this at her previous company and said that the IT department pushed that out to everyone so that they didn't have to add them all manually.

Please let me know if there is any way to do this. I can't find any reference to it anywhere online. THANK YOU!
Question by:timgbaldwin
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 6
  • 3
LVL 63

Expert Comment

by:Simon Butler (Sembee)
ID: 39985220
Ah, the old "it was done at my old company so you must be able to do it" excuse. This is probably the same place the idea came from.
The end user probably has a hazy memory, doesn't remember that IT sat at every machine for 30 minutes or they were not even using Exchange! (It sounds like something Lotus Notes can do).

As far as I am aware, it isn't possible to do what you have asked. Certainly not from Exchange.
You may be able to write a script to do something in Outlook to do it, but it isn't anything I have seen, certainly not the grouping of calendars.
Shared Calendar display is a client side setting, not a server side setting.

LVL 15

Expert Comment

ID: 39986822
If it can be done, your best chance of getting there would be using the Office Customization Tool for Office 2010

Author Comment

ID: 39995452
Have not had a chance to try this but I will next week. Thanks!
Learn how to optimize MySQL for your business need

With the increasing importance of apps & networks in both business & personal interconnections, perfor. has become one of the key metrics of successful communication. This ebook is a hands-on business-case-driven guide to understanding MySQL query parameter tuning & database perf


Author Comment

ID: 40001860
I looked at the Office Customization Tool and this is only for initial setup. For instance to insert the product key, company name, etc.
LVL 15

Expert Comment

ID: 40001944
The only way I can see to get this done using groups is to create a powershell script that will enumerate all the individuals in a user group, then apply calendar permissions to each of those users.  You'd have to invoke this script each time you want permissions modified.

From the conceptual level this would be:
Read AD Group CalendarLimitedDetails
For each user in group {
Set-mailboxfolderpermissions ...

There is no direct method of applying calendar permissions to groups of people, because calendar permissions are assigned within the users mailbox inside the exchange database, and that mailbox entry has no outward visibility to Active Directory - a mailbox cannot query AD for information, so therefore it has no method of enumerating a user group when applying access permissions.

Get-ADGroupMember -Identity "Calendar_LimitedDetails" | ForEach-Object { 
    $mb = Get-Mailbox -Identity $_.distinguishedName
    set-MailboxFolderPermission -Identity "${mb}:\Calendar" -User Default -AccessRights LimitedDetails

Open in new window

The Variable "LimitedDetails" is defined by Microsoft and can be any of the following:
{Variable} 		{Rights Granted}
None 			FolderVisible
Owner 			CreateItems, ReadItems, CreateSubfolders, FolderOwner, FolderContact, FolderVisible, EditOwnedItems, EditAllItems, DeleteOwnedItems, DeleteAllItems
PublishingEditor 	CreateItems, ReadItems, CreateSubfolders, FolderVisible, EditOwnedItems, EditAllItems, DeleteOwnedItems, DeleteAllItems
Editor 			CreateItems, ReadItems, FolderVisible, EditOwnedItems, EditAllItems, DeleteOwnedItems, DeleteAllItems
PublishingAuthor 	CreateItems, ReadItems, CreateSubfolders, FolderVisible, EditOwnedItems, DeleteOwnedItems
Author 			CreateItems, ReadItems, FolderVisible, EditOwnedItems, DeleteOwnedItems
NonEditingAuthor 	CreateItems, ReadItems, FolderVisible
Reviewer 		ReadItems, FolderVisible
Contributor 		CreateItems, FolderVisible

The following roles apply specifically to calendar folders:
AvailabilityOnly 	View only availability data
LimitedDetails		View availability data with subject and location

Open in new window

The default value for calendar access permissions is "AvailabilityOnly"

Author Comment

ID: 40008653
I'm still looking for an answer to this. If I could just figure out how to create calendar groups, and open shared calendars for each user in powershell, (EMS), then we could script this to open all that are needed without user intervention. I'm not a powershell expert, so I'm calling on the gods to help me...

Author Comment

ID: 40008668
Sorry Jrhelgeson, I just saw your post, I probably just didn't refresh. The permissions are not a problem since I can set those with EMS for each user. It's clunky, but it works..

My main problem is just getting the shared calendars to be opened for each user in Outlook and grouped by department. I know these settings are stored on the server since the user can open outlook on any computer and the opened calendars are the same.

 I don't mind scripting this, if we could just find a command to create a calendar group, then to open shared calendars under this group. Thanks for your time and help with this! I think the community would eventually benefit from this if we can find the answer!
LVL 15

Expert Comment

ID: 40008701
My main problem is just getting the shared calendars to be opened for each user in Outlook and grouped by department.
No surprise but you are not the first person to want this, and I have not yet found any method to accomplish this.

I know that Exchange 2010 uses a 'hidden mailbox' to store this information, but have not found any method to directly manipulate that information. The only thing I could think to do is run every command I can think of against a user mailbox and log all the settings, modify their calendar then re-run the powershell commands and compare the results...  I don't hold much hope for that though.  I'm almost certain it would have to be a MAPI utility of some sort.

I think the community would eventually benefit from this if we can find the answer!
Hear hear!


Accepted Solution

timgbaldwin earned 0 total points
ID: 40020652
The best that we could come up with is to create a knowledge base article explaining how to create the groups (departments), then copy paste the list of user names from each department in the "open calendar" dialog, so they wouldn't have to hunt for each user to add to each group. Each user can get this done in about 5 minutes, if someone just takes a few minutes to create a list of users for each department, and make the list accessible to them.  The only problem of course is when new hires arrive, or employees leave the company, the list needs updated.

We then emailed the users and advised them that the new article existed and to please perform these steps.

Author Closing Comment

ID: 40029075
Because there is no true answer for the question I proposed. My solution is a work around.

Featured Post

Windows Server 2016: All you need to know

Learn about Hyper-V features that increase functionality and usability of Microsoft Windows Server 2016. Also, throughout this eBook, you’ll find some basic PowerShell examples that will help you leverage the scripts in your environments!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Want to know how to use Exchange Server Eseutil command? Go through this article as it gives you the know-how.
The main intent of this article is to make you aware of ‘Exchange fail to mount’ error, its effects, causes, and solution.
This video demonstrates how to sync Microsoft Exchange Public Folders with smartphones using CodeTwo Exchange Sync and Exchange ActiveSync. To learn more about CodeTwo Exchange Sync and download the free trial, go to: http://www.codetwo.com/excha…
There are cases when e.g. an IT administrator wants to have full access and view into selected mailboxes on Exchange server, directly from his own email account in Outlook or Outlook Web Access. This proves useful when for example administrator want…

649 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question