Category Archives: Programming

Related to some aspect of programming, software development, related tools, or supporting technologies, related standards, etc.

Using PowerShell/Office 365: Configure Outlook Web Access to Download .XML Files



Office 365 users can access email from one of many native applications, but also from the web browser using the venerable “OWA” (Outlook Web Access) found at Below the friendly Office 365 banner, your email messages are available at your fingertips.


If an email contains attachments, you might be surprised to find out that some attachments are not allowed. For example, XML files. You might see something like the following. The “do not enter” icon is telling you that downloading these files is not supported.



If you click on the files, you will get a pop-up error confirming this:


But you can fix this. It is easy, but I had a hard time finding all the right pieces. Thus, this blog post.

Default Attachment Support

You will find that some attachment types will work. For example, .zip is commonly supported. The exact list depends on what your administrator has configured, but unless .zip was expressly blocked, it should work by default.

But not every file extension you care about will work.

Enabling Attachment Support

Let’s suppose you wish to allow for .xml files to be downloaded. By default, these are blocked.

Here’s what you need to make this happen:

  1. Administrative access to your Office 365 tenant
  2. Download the needed PowerShell cmdlets
  3. Run the cmdlet to enable the desired extensions
  4. Celebrate

If you do not have administrative power, team up with someone who does.

Download the two packages mentioned in step 1 of this Microsoft post which are:

  • Install the 64-bit version of the Microsoft Online Services Sign-in Assistant from here – again, be sure to grab the 64-bit version if you have a 64-bit operating system image (which is likely), and that’s the one I used.
  • Install the .msi file at the bottom of the page from here – as of this writing, it was “AdministrationConfig-V1.1.166.0-GA.msi” but the version number in the filename may change over time.

These are both very quick installs and you can choose all the default values.

Now your PowerShell bits should be resident on your computer.

Before you get on with it, double check that you have your PowerShell execution policy set to allow RemoteSigned (at least). This can be checked via:


If the value

PS v2:\> (Get-Command Set-ExecutionPolicy).ModuleName


(Get-Command Set-ExecutionPolicy).ModuleName

Update-Help -Module Microsoft.PowerShell.Security

(You may need to run the shell as Admin)



Set-ExecutionPolicy RemoteSigned

Per documentaDownload the PowerShell cmdlets for

Set-ExecutionPolicy RemoteSigned
Get-OwaMailboxPolicy | Set-OwaMailboxPolicy -BlockedFileTypes @{Remove = ".xml"}
Get-OwaMailboxPolicy | Set-OwaMailboxPolicy -AllowedFileTypes @{Add = ".xml"}
Get-OwaMailboxPolicy | Set-OwaMailboxPolicy -BlockedMimeTypes @{Remove = "text/xml", "application/xml”}
Get-OwaMailboxPolicy | Set-OwaMailboxPolicy –AllowedMimeTypes @{Add = "text/xml", "application/xml”}





Be careful choosing the file extensions you enable. Allow only those you are comfortable with and for which there is a real need. Being too open here could lead to exposing users to phishing or other attacks using malicious downloadable payloads.


Talk: Running Securely On Azure

On Tuesday evening 27-Mar-2018 I had the pleasure of speaking to the Nashville Azure group about keeping workloads safe in the Azure cloud. Was a great group with a lot of interesting questions and dialog. They even helped to answer each others’ questions when I didn’t have answers, which is the best outcome of all.

For those interested in the deck I used, please find it below.


Talk: SQL Saturday 694 – Azure SQL Database – not just a cloud version of SQL Server

Spoke today to a small crowd of hardy soles who braved the snow to make it to SQL Saturday 694 – Providence – held at nearby Bryant University in Smithfield.

My slides are included below.

Azure SQL DB – Not Just A Cloud Version of SQL Server – SQL Saturday RI – 09-Dec-2017

Talk: SharePoint Saturday Burlington – Gentle Introduction to Azure

We first looked at how we might solve a random StackOverflow question using Azure Logic Apps, Azure Function Apps, the nifty service, and a look at how a little Cognitive Service action could be woven in. A random walk around other Azure features followed. Some reactions were memorable – my favorite, because I completely agree: Why would I ever want to run my own SharePoint instance when the Office 365 service is available? And a bunch of other good questions.


Talk: A Gentle Intro to Serverless Azure

Tonight I spoke at the North Boston Azure group and covering serverless concepts by looking at Logic Apps, Function Apps, and a couple of powerful/easy features of Web Apps (authentication via AAD/Twitter & CD via Github).

Before I posted the slides (see below), I needed to clean up the 1000+ emails I spammed myself with from my Logic App demo. (Doh!)


The slides are available for review here:



Talk: Logic Apps & Functions at Granite State SharePoint Users Group

Tonight I was pleased to have the opportunity to demystify Azure Logic Apps & Functions for the Granite State SharePoint Users Group. Here is the slide deck I used to present:


Speaking at the “stimulation rich” Microsoft Store — photo credit: @jfj1997 Julie Turner

By the time I turned off the Twitter => Slack Logic App, a lot of messages were posted (in the #demo channel within Boston Azure slack account – which is open – join here):


I will be giving a longer and more general version of this talk at the SharePoint Saturday New England 2017 event on Sat Oct 28 in Burlington MA.

Also planning other variants of this talk in the coming weeks:

  1. Azure Functions at Boston Azure – Thu Sep 14 in Cambridge MA (NERD)
  2. Serverless Azure at VT Code Camp – Sat Sep 16 in Burlington Vermont
  3. Serverless Azure at North Boston Azure – Tue Sep 26 in Burlington MA
  4. Logic Apps Thu Oct 5 at NE Microsoft Dev Group
  5. Serverless Azure at SharePoint Saturday NE event mentioned above Sat Oct 28 in Burlington MA

Talk: Logic Apps at Boston Azure

Last night’s Boston Azure meetup featured two talks – No App Left Behind by Kevin Brown of SoftNAS after an opening talk on Logic Apps by me. My slides are below.

I did not have time to show it, but the Slack => Email process did succeed. I saw this later when I checked my email. Subject: bill-tux-full.png, Body: 1504739903F6YKE996C bill-tux-full.png bill-tux-full.png. And you can see the photo for yourself in the Boston Azure slack #demo channel.

If you’d like to learn more about Serverless Azure, check out these upcoming talks: Azure Functions and Logic Apps Thu Sep 7 in NHAzure Functions Thu Sep 14 in Cambridge MA (NERD), and various playing of Serverless Azure (Azure Functions and Logic Apps) on Sat Sep 16 in Burlington Vermont, Tue Sep 26 in Burlington MA, and (if my talk is accepted for the Sharepoint event) Sat Oct 28 in Burlington MA.

As always, please let me know if you are interested in more talks at Boston Azure. 🙂