传输规则操作

 

适用于: Exchange Server 2007 SP3, Exchange Server 2007 SP2, Exchange Server 2007 SP1, Exchange Server 2007

上一次修改主题: 2008-10-22

本主题介绍对安装了 Microsoft Exchange Server 2007 集线器传输服务器角色或边缘传输服务器角色的计算机可以执行的传输规则操作。本主题还介绍了操作属性和值。集线器传输服务器角色和边缘传输服务器角色可以对经过这些服务器角色的电子邮件应用传输规则。但是,可用于每个服务器角色的操作是不同的。

操作和操作属性

操作将应用于与传输规则代理上配置的传输规则中存在的条件匹配但不与其中的例外相匹配的电子邮件。每个操作都会以不同方式影响电子邮件。例如,一个操作会导致电子邮件重定向到另一个地址,或被删除。每个操作都由操作本身、其操作属性以及该属性的值组成。

若要向操作分配值,必须确定对特定操作可用的操作属性。例如,必须将 Address 操作属性与 RedirectMessage 操作一起使用。有关必须用于集线器传输服务器的操作属性,请参阅表 2。有关必须用于边缘传输服务器的操作属性,请参阅表 3。

某些操作需要设置两个或更多个谓词属性,这是因为某些操作会修改电子邮件的节中的特定字段,例如邮件头字段。指定用于修改邮件头的操作时,一个操作属性指定要修改的特定头字段,第二个操作属性则为邮件头指定新的值。在此类情况中,还必须从表 2 或表 3(具体取决于服务器角色)中的“其他操作属性”列内为第二个操作属性指定一个值。例如,可以配置操作,将“X-Test-Message-Source”头字段修改为特定的字符串,例如 contoso.com

表 1 列出了可以与集线器传输服务器或边缘传输服务器上配置的传输规则一起使用的操作属性。

表 1   集线器传输服务器或边缘传输服务器上传输规则的操作属性

操作属性 预期格式 说明

Addresses

  • 边缘传输服务器   简单邮件传输协议 (SMTP) 地址的数组

  • 集线器传输服务器   Active Directory 邮箱、联系人、已启用邮件的用户或通讯组对象的数组

在边缘传输服务器上, Addresses 接受 SMTP 地址数组,每个地址都用双引号引住。有关如何在边缘传输服务器上使用此操作属性的详细说明,请参阅本主题后面的“在边缘传输服务器上分配地址”。

在集线器传输服务器上,Addresses 接受邮箱、联系人、已启用邮件的用户或通讯组对象数组。有关如何在集线器传输服务器上使用此操作属性的详细说明,请参阅本主题后面的“在集线器传输服务器上分配地址”。

Classification

单个邮件分类对象

Classification 接受单个邮件分类对象。若要指定邮件分类对象,请使用 Get-MessageClassification 命令。例如,使用以下命令可以对操作应用 ExCompanyInternal 邮件分类:

$Action.Classification = (Get-MessageClassification ExCompanyInternal).Identity

有关邮件分类的详细信息,请参阅邮件分类概述

EnhancedStatusCode

单个发送状态通知 (DSN) 代码,5.7.15.7.105.7.999 之间的任意值。

EnhancedStatusCode 指定向 RejectMessage 传输规则操作拒绝的邮件发件人显示的 DSN 代码和相关的 DSN 消息。与指定 DSN 状态代码关联的 DSN 消息显示在向发件人显示的 NDR 的用户信息部分。指定 DSN 代码必须是现有的默认 DSN 代码或可以使用 New-SystemMessage cmdlet 创建的自定义 DSN 状态代码。

EventMessage

单个字符串

EventMessage 接受在事件日志中显示的单个字符串,该字符串将添加到本地计算机上的应用程序事件日志中。

FallbackAction

单个值,可以选择 WrapIgnoreReject

FallbackAction 指定如果不能对电子邮件应用免责声明,例如,加密邮件时,则应执行什么传输规则。默认回退操作是 Wrap。该值用双引号引住。下表显示每个回退操作及其说明:

  • 打包   如果无法将免责声明插入原始邮件中,则 Exchange 会将原始邮件封装(或“打包”)在新的邮件信封中,然后将免责声明插入新邮件中。

    important要点:
    如果将原始邮件封装在新邮件信封中,则后续传输规则将应用于新邮件信封,而不是原始邮件。因此,在配置其他传输规则之后,必须配置包含免责声明操作的传输规则,将原始邮件封装在新的邮件正文中。
    note注意:
    如果无法将原始邮件封装在新邮件信封中,则不会传递原始邮件。邮件的发件人将收到说明邮件未送达原因的未送达报告 (NDR)。
  • 忽略   如果无法将免责声明插入原始邮件,则 Exchange 允许原始邮件在未经修改的情况下继续进行传递。这种情况下,不添加免责声明。

  • 拒绝   如果无法将免责声明插入原始邮件,则 Exchange 不传递该邮件。邮件的发件人将收到说明邮件未送达原因的 NDR。

Font

单个值,可以选择 ArialCourierNewVerdana

Font 指定将免责声明文本添加到电子邮件中时该文本的字体。默认字体是 Arial。该值用双引号引住。

FontColor

单个值,可以选择 BlackBlueFuchsiaGrayGreenLimeMaroonNavyOlivePurpleRedSilverTealWhiteYellow

FontColor 指定将免责声明文本添加到电子邮件时该文本的字体颜色。默认颜色是 Gray。该值用双引号引住。

FontSize

单个值,可以选择 SmallestSmallerNormalLargerLargest

FontSize 指定将免责声明文本添加到电子邮件时该文本的字体大小。默认大小是 Smallest。该值用双引号引住。

HeaderValue

单个字符串

HeaderValue 接受单个字符串,该字符串将应用于通过使用 MessageHeader 操作属性指定的头。该字符串用双引号引住。

Location

单个值,可以选择 AppendPrepend

Location 指定将免责声明插入电子邮件中的什么位置。Append 将免责声明放在电子邮件线程的末尾。Prepend 将免责声明放在最新电子邮件的开头。该值用双引号引住。

MessageHeader

单个字符串

MessageHeader 接受字符串,该字符串指定要添加或修改哪个 MessageHeader。通过使用 HeaderValue 操作属性指定的字符串将插入由 MessageHeader 指定的头中。该字符串用双引号引住。

Prefix

单个字符串

Prefix 接受电子邮件主题中预先挂起的字符串。该字符串用双引号引住。

为了防止每次按照传输规则回复邮件时都要将通过 Prefix 传输规则操作指定的字符串都加到主题上,请在传输规则中添加 SubjectContains 异常。

SubjectContains 异常应该包含通过 Prefix 传输规则操作指定的字符串。如果在传输规则中添加了 SubjectContains 异常,那么,如果主题中已有 Prefix 字符串,该传输规则不会将另外一个 Prefix 字符串实例添加到主题中。

RejectReason

单个字符串

RejectReason 接受一个字符串,该字符串用于填充电子邮件被拒绝时返回给电子邮件发件人的 NDR 的管理员信息部分。该字符串用双引号引住。

SclValue

单个整数

SclValue 接受从 09 的单个整数,该值用于配置电子邮件的垃圾邮件可信度 (SCL)。该整数用双引号引住。

Separator

单个值,可以选择 WithSeparatorWithoutSeparator

Separator 指定是否在免责声明与电子邮件正文之间放置分隔符。该值用双引号引住。

Text

单个字符串

Text 接受字符串,该字符串用于填充添加到电子邮件中的免责声明邮件。该字符串用双引号引住。

集线器传输服务器上支持的操作

表 2 列出了可以与集线器传输服务器上配置的传输规则一起使用的操作。

表 2   集线器传输服务器上受支持的传输规则操作

受支持的规则操作 操作名 第一个操作属性 其他操作属性 说明

记录包含消息的事件

LogEvent

EventMessage

不适用

LogEvent 可以将事件添加到本地计算机的应用程序日志中。

为主题预加字符串

PrependSubject

Prefix

不适用

PrependSubject 可以在电子邮件主题字段开头预加字符串。

应用邮件分类

ApplyClassification

Classification

不适用

ApplyClassification 可以对电子邮件应用邮件分类。

有关邮件分类的详细信息,请参阅邮件分类概述

如果无法应用则使用字体、大小、颜色、分隔符和回退操作附加免责声明文本

ApplyDisclaimer

Text

Location, Font, FontSize, FontColor, FallbackAction, Separator

ApplyDisclaimer 可以将免责声明应用于电子邮件。有关免责声明的详细信息,请参阅免责声明概述

为垃圾邮件可信度设置值

SetScl

SclValue

不适用

SetScl 可以设置电子邮件的垃圾邮件可信度 (SCL)。

设置头的值

SetHeader

MessageHeader

HeaderValue

SetHeader 可以新建邮件头字段或修改现有的邮件头字段。

删除头

RemoveHeader

MessageHeader

不适用

RemoveHeader 可以从电子邮件中删除指定的邮件头字段。

在“收件人”字段地址中添加收件人

AddToRecipient

Addresses

不适用

AddToRecipient 用于将一个或多个电子邮件收件人添加到电子邮件的“收件人”地址列表中。原始收件人可以看到添加的地址。

将邮件复制到地址

CopyTo

Addresses

不适用

CopyTo 用于将一个或多个电子邮件收件人添加到电子邮件的“抄送”(Cc) 字段中。原始收件人可以看到原始地址。

将邮件密件抄送(Bcc)到地址

BlindCopyTo

Addresses

不适用

BlindCopyTo 用于将一个或多个电子邮件收件人添加到电子邮件的“密件抄送”(Bcc) 地址列表中。原始收件人不会收到通知,也无法看到添加的地址。

将邮件重定向到地址

RedirectMessage

Addresses

不适用

RedirectMessage 用于将电子邮件重定向到管理员指定的一个或多个电子邮件收件人。邮件不会传送给原始收件人,也不会向收件人或发件人发送通知。

向发件人发送包含增强状态代码的退回邮件

RejectMessage

RejectReason

EnhancedStatusCode

RejectMessage 将删除电子邮件,并向发件人发送未送达回执。收件人不会收到邮件或通知。

自动删除邮件

DeleteMessage

不适用

不适用

DeleteMessage 可以删除电子邮件,而不向收件人或发件人发送通知。

在边缘传输服务器上支持的操作

表 3 列出了可以与边缘传输服务器上配置的传输规则一起使用的操作。

表 3   边缘传输服务器上受支持的传输规则操作

受支持的规则操作 操作名 第一个操作属性 其他操作属性 说明

记录包含消息的事件

LogEvent

EventMessage

不适用

LogEvent 可以将事件插入本地计算机的应用程序日志中。

为主题预加字符串

PrependSubject

Prefix

不适用

PrependSubject 可以在电子邮件主题字段开头预加字符串。

为垃圾邮件可信度设置值

SetScl

SclValue

不适用

SetScl 可以配置电子邮件的垃圾邮件可信度 (SCL)。

设置头的值

SetHeader

MessageHeader

HeaderValue

SetHeader 可以新建邮件头字段或修改现有的邮件头字段。

删除头

RemoveHeader

MessageHeader

不适用

RemoveHeader 可以从电子邮件中删除指定的邮件头字段。

在“收件人”字段地址中添加收件人

AddToRecipient

Addresses

不适用

AddToRecipient 用于将一个或多个电子邮件地址添加到电子邮件的“收件人”地址列表中。原始收件人可以看到添加的地址。

将邮件复制到地址

CopyTo

Addresses

不适用

CopyTo 用于将一个或多个电子邮件地址添加到电子邮件的“抄送”(Cc) 字段中。原始收件人可以看到原始地址。

将邮件密件抄送(Bcc)到地址

BlindCopyTo

Addresses

不适用

BlindCopyTo 用于将一个或多个电子邮件地址添加到电子邮件的“密件抄送”(Bcc) 地址列表中。原始收件人不会收到通知,也无法看到添加的地址。

断开连接

Disconnect

不适用

不适用

Disconnect 可以断开发送服务器与边缘传输服务器之间的连接,而不生成 NDR 邮件。

将邮件重定向到地址

RedirectMessage

Addresses

不适用

RedirectMessage 可以将电子邮件重定向到管理员指定的一个或多个电子邮件地址。邮件不会传递给原始收件人,并且不会向收件人或发件人提供通知。

隔离邮件

Quarantine

不适用

不适用

Quarantine 可以将电子邮件重定向到使用 Set-ContentFilterConfig cmdlet 的 QuarantineMailbox 参数配置的垃圾邮件隔离邮箱。

important要点:
必须先填充 Set-ContentFilterConfig cmdlet 的 QuarantineMailbox 参数,并且必须先存在指定的邮箱,然后才能配置“隔离邮件”操作。如果未填充 QuarantineMailbox 参数或隔离邮箱不存在,则发送到隔离邮箱的邮件将丢失,并生成未送达报告。

有关垃圾邮件隔离邮箱的详细信息,请参阅配置和管理垃圾邮件隔离

用状态代码和响应拒绝邮件

SmtpRejectMessage

StatusCode

RejectReason

SmtpRejectMessage 可以删除电子邮件,并向发件人发送通知。收件人不会收到邮件或通知。此操作用于指定特定的发送状态通知 (DSN) 代码。

有关 DSN 的详细信息,请参阅管理发送状态通知

自动删除邮件

DeleteMessage

不适用

不适用

DeleteMessage 可以删除电子邮件,而不向收件人或发件人发送通知。

匹配多个规则

如果某邮件匹配多个规则的条件,则将根据优先级应用操作。首先处理优先级较低的规则。然后处理优先级较高的规则。产生的操作取决于已配置的规则。

例如,请考虑以下方案:

方案 1

  • 您有两个传输规则,每个规则均已配置为向邮件添加免责声明文本。

  • 邮件与这个两个规则均匹配。

在此方案中,首先处理优先级较低的规则。因此,优先级较低规则指定的免责声明将添加到邮件中。然后处理优先级较高规则。因此,优先级较高规则指定的免责声明将添加到邮件中。

在此方案中,所接收的电子邮件将添加两个免责声明。

方案 2

  • 您有两个传输规则,每个规则都将修改邮件的垃圾邮件可信度 (SCL) 值。

  • 邮件与这个两个规则均匹配。

在此方案中,首先处理优先级较低的规则。因此,邮件的 SCL 值将修改为优先级较低规则指定的值。然后处理优先级较高规则。因此,邮件的 SCL 值将修改为优先级较高规则指定的值。

在此方案中,所接收的电子邮件将具有最高优先级规则的 SCL 值。

在集线器传输服务器上分配地址

集线器传输服务器上的 Addresses 操作属性要求向属性传递完整的邮箱、联系人、已启用邮件的用户或通讯组对象。简单邮件传输协议 (SMTP) 电子邮件地址不是该属性的有效值。分配给 Addresses 操作属性的值必须在数组中。

要向 Addresses 操作属性传递邮箱、联系人、已启用邮件的用户或通讯组对象,必须从数组中调用合适的 Exchange 命令行管理程序命令,并以对象的标识或名称提供命令。必须将命令名和标识用圆括号括起。请使用以下命令语法:

$Action.Addresses = @((Get-Mailbox <Mailbox Name>), (Get-MailContact <Contact Name>), (Get-MailUser <Mail-Enabled User>), (Get-DistributionGroup <Distribution Group Name>))

为 Addresses 操作属性分配值

  • 运行以下命令分配单个邮箱对象:

    $Action.Addresses = @((Get-Mailbox "Ted Bremer"))
    
  • 运行以下命令分配单个邮件联系人对象:

    $Action.Addresses = @((Get-MailContact "Masato Kawai"))
    
  • 运行以下命令分配单个已启用邮件的用户对象:

    $Action.Addresses = @((Get-MailUser "Pilar Ackerman"))
    
  • 运行下列命令以分配单个通讯组对象:

    $Action.Addresses = @((Get-DistributionGroup "Sales Group"))
    
  • 运行下列命令以分配邮箱、用户和通讯组对象的组合:

    $Action.Addresses = @((Get-Mailbox "Ted Bremer"), (Get-Mailbox "Kim Akers"), (Get-MailContact "Pilar Ackerman"), (Get-MailContact "Adam Barr"), (Get-MailUser "Chris Meyer"), (Get-DistributionGroup "Marketing Group"), (Get-DistributionGroup "Research Group"))
    

在边缘传输服务器上分配地址

该 边缘传输服务器上的 Addresses 操作属性要求您向属性传递 SMTP 电子邮件地址。这是因为边缘传输服务器没有访问 Active Directory 目录服务中包含的收件人对象的权限,并且您可能希望指定 Exchange 组织之外的电子邮件地址。分配给 Addresses 操作属性的值必须在数组中。

要将 SMTP 地址传递给 Addresses 操作属性,必须用双引号将 SMTP 电子邮件地址引住。请使用以下命令语法:

$Action.Addresses = @("<SMTP e-mail address 1>","<SMTP e-mail address 2>", "< SMTP e-mail address...>" )

为 Addresses 操作属性分配值

  • 运行以下命令来分配 SMTP 电子邮件地址数组:

    $Action.Addresses = @("sales@contoso.com", "research@contoso.com", "investors@nwtraders.com ")
    

详细信息

有关每个命令的详细语法和参数信息,请参阅下列主题:

有关传输规则的详细信息,请参阅下列主题: