Transport Rule To Force On-Premises Terminology In a Not So Subtle Way

There are many memes doing the rounds inside Microsoft which are sent out when someone uses the term on-premise rather than on-premises.  Note the extra"S" in the latter.  This is not new, and the last rant on this subject was a year ago Friday Morning Rant – Premise and Tenents.


For another bit of Friday morning fun, how about we provide some rather unsubtle feedback via an Exchange transport rule?

If only we could create this in the Microsoft tenant!


Creating Transport Rule

This is straight forward, and uses the normal syntax.  Connect to your Exchange environment using remote PowerShell.  The below code sample can be used as a starting point:

New-TransportRule -Name "Grammar Police - Enforce Premises" -SubjectOrBodyContainsWords "on-premise" -RejectMessageReasonText 'For all that is holy, the term is on-premises!' -StopRuleProcessing:$false -SetAuditSeverity '' -RuleErrorAction 'Ignore' -Priority 0 

Check For On-Premise Transport Rule

The rule is created with priority zero, and is at the top of the list of rules.  This is highlighted by the red arrow:

Rule Created - Priority Zero


User Experience

In the example below, one person will attempt to send another an email.  Even though the spell checker has picked up on the fact and underlined it in squiggly red, the person will bullishly click the send button.

Naughty Person Using On-Premise


But no!  Their attempts have been foiled by the transport rule, and they swiftly get an NDR.


Ha - Denied



Generally when using transport rules I love to follow the tips which Andrew Stobart provides on this blog.  When you create hundreds of transport rules, throubleshooting message flow can be challenging.  To assist Andrew posted Easily tell which transport rules a message triggered.

In case you were wondering why the above code sample does not have this, the below error message will shed some light on that.

An Action to Reject the Message Was Specified, But There is More Than One Action




Rhoderick Milne [MSFT]

Leave a Reply

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