technology and zen of life

“A heisenbug (named after the Heisenberg Uncertainty Principle) is a computer bug that disappears or alters its characteristics when an attempt is made to study it.”

Enable Internet Calendar Publishing for Exchange 2013

If you want to share your Exchange 2013 calendar, or export your calendar to an iCal ICS file, read on. This is what I did on my calendaring server named Verdandi.

In 2011, I wrote in the article “Calendaring: Exchange can publish to ICS, defaults to insecure” on this website:

ICS (iCal) is a file format for calendars. Most calendaring software uses it. For example, you can import / export it to Google Calendar. If you have a Google Calendar, you can “publish” your calendar to an ICS file, so you can use it with other software like Mozilla Calendar or web services.

Step 1: configure the Web proxy URL

Set-ExchangeServer -Identity "verdandi" -InternetWebProxy "https://verdandi.mydomain.tld" 

check: look for “InternetWebProxy” in the output of

Get-ExchangeServer | format-list

Step 2: enable the publishing virtual directory

Set-OwaVirtualDirectory -Identity "owa (Default Web Site)" -ExternalUrl "https://verdandi.mydomain.tld/owa" -CalendarEnabled $true 

check: look for “ExternalUrl” in the output of

Get-OwaVirtualDirectory | format-list

Step 3.1: create a sharing policy specifically for Internet calendar publishing

allow full sharing (users can still restrict this to free/busy when sharing with others)

New-SharingPolicy -Name "Internet" -Domains 'Anonymous: CalendarSharingFreeBusyReviewer' -Enabled $true

allow only free/busy:

New-SharingPolicy -Name "Internet" -Domains 'Anonymous: CalendarSharingFreeBusySimple' -Enabled $true

to remove again:

Remove-SharingPolicy "Internet"


Get-SharingPolicy "Internet" | format-list

enable individual mailboxes:

Set-Mailbox -Identity "Evert Mouw" -SharingPolicy "Internet"

check again:

Start the EAC (https://your-server/ecp), and Navigate to Recipients > Mailboxes. In the list view, select the mailbox you want, and then click Edit Edit Icon. In User Mailbox, click Mailbox features. In the Sharing policy list, select the sharing policy you want to apply to this mailbox.

Step 3.2: make the new sharing policy default

Optional. You can enable individual mailboxes, see step 3.1.

THIS DID NOT WORK FOR ME, as it asked for some identity and I didn’t know what to fill in. Also, as I didn’t need it much, I was too lazy to take the trouble to find out…

Set-SharingPolicy -Name "Internet" -Identity "verdandi" -Domains 'Anonymous: CalendarSharingFreeBusySimple' -Enabled $true

Step 4: improve security (optional)

With IIS manager, enable digest auth. and disable anonymous access to the calendar folder. This way, you indeed cannot share your calendar with others, but you now are more secure when using full details iCal sharing with other calendaring applications.

See my earlier article on Techmonks: Calendaring: Exchange can publish to ICS, defaults to insecure.

Also see the screenshot below.

However, I could not get curl and wget play nice with it, so I gave up and re-enabled anonymous access again, in order to make backups using ics files.

Step 5: use it

Log in to OWA, go to your calendar, and choose “Sharing”. You can share your calendar details by sending it to some email address. Do send it to your own email address. You will receive the URLs needed to access your shared schedule.


exchange 2013 ical sharing more secure

exchange 2013 ical sharing more secure

About Evert Mouw

Interested in kinda everything, studied political science, now studying medical informatics. MCSE, Linux enthousiast, and believing that technology is the path to enlightenment 😉 Best RTS game ever is Warhammer Soulstorm (IMHO). Other hobbies include hiking, kayaking, reading and when I have time, trying to have an ant colony in an artificial nest (formicarium).

Leave a Reply

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

This site uses Akismet to reduce spam. Learn how your comment data is processed.

2 Responses

  1. reaver says:

    Is it possible to share a calendar externally like this example, but NOT use OWA?


The views expressed on this blog are personal. We do not claim to be a representative voice of the views of any organisation whatsoever. We are not responsible for the content present on the blogs to which we have linked.Views expressed are solely that of the author and does not reflect a collective opinion of contributors.
%d bloggers like this: