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
The rule is created with priority zero, and is at the top of the list of rules. This is highlighted by the red arrow:
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.
But no! Their attempts have been foiled by the transport rule, and they swiftly get an NDR.
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.