How do I enable the new Internet Calendar Sharing (.ICS) with Exchange 2010 Sp1?

This was a question asked by a university in North Carolina.  (Screenshots courtesy of the Exchange product team)


What can I share my calendar with?

Basically any platform that supports iCal (.ics) format can consume this such as Google, Zimbra, Yahoo, Windows Live, and even external Outlook users can view your calendar without the need for calendar federation.




What does it look like?

On the client side, within OWA, you select “publish this calendar”.  note: I haven’t seen equivalent feature in Outlook 2010.


Select secondary calendar publishing options such as details, how many months, etc.


To share your calendar via ICS externally, using OWA select “send links to this calendar”


Email put together to external person with .ICS links


External Recipients view of ICS HTML URLs:


External Recipients view of your calendar using HTML view of Internet Shared Calendar:


How do I enable Internet Calendar Sharing?

The exchange administrators will have to run some cmdlets to enable this:


Step 1:

PRE-REQUISITE: OWA External URL must be set

set-owavirtualdirectory –Identity <CAS> -ExternalURL <externalURLforCAS>


Step 2:

PRE-REQUISITE: Mailbox webproxy must be set

set-exchangeserver –identity “servername” –InternetWebProxy ”webproxy URL”


Step 3:

Admin must enable Internet access to exchange published calendars

set-owavirtualdirectory –Identity <CAS> -CalendarPublishingEnabled $true


Step 4:

Admin must enable sharing policy for Internet Publishing

set-sharingpolicy –Identity <PolicyName>

-Domains “Anonymous:<accesslevel>”


Optional Step 5: If using OWA “publish this calendar” is not an option this is an alternative step

Once policy and vdir access are set, can publish calendar

set-mailboxcalendarfolder –Identity <alias>:\calendar -SearchableUrlEnabled (default $false) -DetailLevel (default AvailabilityOnly)

-PublishDateRangeFrom (default ThreeMonths)

-PublishDateRangeTo (default ThreeMonths)


Optional Step 6:

Once calendar is published, can retrieve users URL’s

get-mailboxcalendarfolder –Identity <alias>:\calendar


Final published URL format you would place in external email systems clients would be something like this:\<userID+CalendarID>.ics

or they could just leverage the HTML view.