RSS

how to 解决全球地址簿第一人总收到无关的内部邮件

31 Aug

试想一个场景。在一个企业中,exchange server是公司的邮件系统。而所有的员工则使用outlook exchange模式或者owa等发信。可是呢,大家总是忘记使用outlook的自动补全功能(ctrl+K),于是打开了全球地址簿,选择到某人上,可是却忘记点击鼠标。直接回车,紧接着alt+s就发送出去邮件了。于是这封邮件就跑到了全球地址簿的第一个条目上的。如果只是一个用户,那问题还是比较小,如果正好这个条目是全公司的DG呢?

好了,一个简单的解决办法如下:

创建一个邮件联系人,然后创建一条邮件规则,凡是发给这个用户的邮件都将被退回,并给出一条提示。

为了将邮件联系人条目置于全球地址簿第一条,需要为该用户起一个displayname中首字符为特殊字符的名字。为了简单起见,这里使用”.”。如果你对这个点有一些不爽请去研究ASCII,找到一个可以不显示出来的字符并添加。

1、创建一个联系人账户

   1: New-MailContact -Name ".First Address Book Entry" –ExternalEmailAddress "firstaddressbookentry@contoso.com" -Alias "firstaddressbookentry" 

2、 创建一个系统错误消息

   1: New-SystemMessage -DsnCode 5.7.11 -Text 'You have accidentally sent an e-mail to the first entry in the Outlook Global Address List.<br>You may wish to resend your message to the correct recipient.' -Internal $True -Language en

3、 创建一个传输规则

 

   1: $Condition = Get-TransportRulePredicate SentTo
   2: $Condition.Addresses = @(Get-MailContact ".First Address Book Entry")
   3: $Action = Get-TransportRuleAction RejectMessage
   4: $Action.RejectReason = "E-mail to the first entry in the GAL is not allowed."
   5: $Action.EnhancedStatusCode = "5.7.11"
   6: New-TransportRule -Name "Block e-mail to the first entry in the GAL" –Conditions @($Condition) -Actions @($Action) -Priority 0

好,现在看一下最终效果图。

发一封邮件给该联系人,退信如下。注意看中间和最下面的错误提示。

Advertisements
 
1 Comment

Posted by on August 31, 2009 in Exchange Server

 

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

 
%d bloggers like this: