如何修改傳輸規則

 

適用版本: Exchange Server 2007 SP3, Exchange Server 2007 SP2, Exchange Server 2007 SP1, Exchange Server 2007

上次修改主題的時間: 2007-02-08

本主題說明如何使用 Exchange 管理主控台或 Exchange 管理命令介面,在已安裝 Microsoft Exchange Server 2007 Hub Transport server role 或 Edge Transport server role 的電腦上,修改其中設定的現有傳輸規則。

如需傳輸規則代理程式的相關資訊,請參閱傳輸規則的概觀

開始之前

若要執行下列程序,您使用的帳戶必須已委派下列資格:

  • Exchange 組織系統管理員角色

若要在已安裝 Edge Transport server role 的電腦上執行下列程序,則必須使用該電腦之本機 Administrators 群組成員的帳戶進行登入。

如需管理 Exchange 2007 所需之權限、委派角色以及權利的相關資訊,請參閱權限考量

若要執行修改傳輸規則的程序,您必須熟悉如何使用 Exchange 管理主控台及 Exchange 管理命令介面來建立傳輸規則。如需有關如何建立傳輸規則的深入討論,請參閱如何建立新的傳輸規則

如需如何將傳輸規則套用至 Hub Transport Server 及 Edge Transport Server 的相關資訊,請參閱了解傳輸規則在 Exchange 2007 組織中的套用方式

Caution請注意:
本主題說明如何修改現有的傳輸規則。在您要修改生產環境中現有的傳輸規則之前,請先使用測試環境來了解如何修改現有的傳輸規則,並且進行完整的測試。下列程序若未經過修改以支援您的組織,則不應在生產環境中執行。
important重要事項:
若要將傳輸規則套用到電子郵件,必須有一個可讓套用傳輸規則的郵件可以進出伺服器的路由。此外,郵件不得受限於系統管理員設定之防止郵件傳遞的傳輸限制。如果傳輸限制防止郵件傳遞,則傳輸規則代理程式將無法針對該郵件執行,且不會記錄任何傳輸規則代理程式事件。

使用 Exchange 管理主控台修改現有的傳輸規則

下列程序將顯示如何在 Hub Transport Server 或 Edge Transport Server 上的 Exchange 管理主控台中,開啟傳輸規則精靈並修改現有的傳輸規則。請針對您正在管理的伺服器角色選取程序。

使用 Exchange 管理主控台修改 Hub Transport Server 上現有的傳輸規則

  1. 開啟 Hub Transport Server 上的 Exchange 管理主控台。

  2. 在主控台樹狀目錄中按一下 [組織組態],然後按一下 [集線傳輸]。

  3. 在結果窗格的 [傳輸規則] 索引標籤上,在想要修改的規則上按一下滑鼠右鍵,再按一下 [編輯規則]。

  4. 按 [下一步],瀏覽至傳輸規則精靈中具有想要修改之傳輸規則內容的頁面。修改內容。

  5. 完成修改時,請按一下 [更新],然後按一下 [完成]。

使用 Exchange 管理主控台修改 Edge Transport Server 上現有的傳輸規則

  1. 在含有您想要修改之傳輸規則的 Edge Transport Server 上,開啟 Exchange 管理主控台。

  2. 在主控台樹狀目錄中,按一下 [邊際傳輸]。

  3. 在結果窗格的 [傳輸規則] 索引標籤上,在想要修改的規則上按一下滑鼠右鍵,再按一下 [編輯規則]。

  4. 按 [下一步],瀏覽至傳輸規則精靈中具有想要修改之傳輸規則內容的頁面。修改內容。

  5. 完成修改時,請按一下 [更新],然後按一下 [完成]。

使用 Exchange 管理命令介面修改傳輸規則

傳輸規則上存在的條件、例外狀況及動作都是儲存在陣列中,如同儲存在每個條件、例外狀況或動作中的值一樣。在 Microsoft Exchange 2007 中,這種針對條件、例外狀況、動作及其相關值的群組方式,提供了非常具有彈性的結構,可用來套用您組織的原則。

important重要事項:
如果您設定了使用通訊群組的傳輸規則條件或例外,您必須指定萬用安全性群組。這是必要動作,因為傳輸規則會複寫到組織中的所有 Hub Transport Server,並在遠端 Active Directory 網域中可能包含 Hub Transport Server。這些 Active Directory 網域可能無法存取不是當作萬用安全性群組所建立的通訊群組。

若要在 Exchange 管理命令介面中使用傳輸規則,則您必須熟悉下列概念:

陣列及單一值

傳輸規則的條件、例外狀況及動作之組態中大部分的層面,都是使用陣列。陣列可在最高層級針對每個條件、例外狀況及動作提供群組的功能。例如,在傳輸規則上設定的條件,就是稱為 Conditions 之陣列的一部分。在 Conditions 陣列中,每個條件都儲存在陣列元素中,並且每個陣列元素都會指派一個陣列元素號碼。如果您使用陣列元素號碼來存取 Conditions 陣列,就可以擷取儲存在該元素中的條件。同樣的道理,在 Exceptions 陣列及 Actions 陣列中也是一樣。

大部份條件及例外狀況以及某些動作也會使用陣列來儲存值。搭配條件、例外狀況及動作使用陣列時,可讓 Exchange 2007 儲存多個值,傳輸規則代理程式可以使用這些值,判定是否應該對特殊郵件觸發規則,以及傳輸規則應該將哪些動作套用至該郵件。先前所述的結構在這裡也適用。每個條件、例外狀況及動作值都會儲存在陣列元素中,您可以使用陣列元素號碼來存取它們。

某些條件、例外狀況,以及大部份動作只支援單一值,因此不會使用陣列。在這些情況下,您並不需要使用或建構陣列來設定值。如需哪些條件、例外狀況及動作支援陣列、單一值或不含值的相關資訊,請參閱傳輸規則述詞傳輸規則動作

修改現有傳輸規則上的條件、例外狀況或動作

用來修改存在於傳輸規則中之條件、例外狀況及動作的程序,都非常相似。在本主題中,我們將說明如何修改條件,但是您仍然可將此資訊套用至修改例外狀況及動作中。如需如何修改條件、例外狀況或動作的相關資訊,請參閱本節稍後提及的主題。

note附註:
若要修改條件或例外狀況上所設定的值,請參閱本主題稍後的<修改傳輸規則中現有條件或例外狀況的值>。
若要修改傳輸規則動作上所設定的值,請參閱本主題稍後的<修改傳輸規則中現有動作的值>。

當您要修改傳輸規則上的條件時,必須存取保有條件及其值的陣列。如果您想要在傳輸規則中新增或移除條件,必須將 Condition 陣列的元素分割成個別的變數,才能夠進行修改。

如果您想要移除陣列中的條件,則必須重新建立條件陣列,因為目前沒有可將元素從陣列中移除的簡單方式。當您將陣列元素分割為個別的變數後,就可以重新建立陣列,方法是在執行 Set-TransportRule 命令時,僅指派含有您想要保留之條件的變數。例如,您有下列三個條件:

  • Condition1
  • Condition2
  • Condition3

您不再需要 Condition2. 。為了移除 Condition2,您將 Condition1Condition3 指派給變數 $Variable1$Variable3。然後,您使用命令 Set-TransportRule "Example" -Condition @($Variable1, $Variable3) 將這兩個變數加入傳輸規則。此命令會以您指定的新條件陣列,取代先前設定的條件陣列。

當您要新增條件時,也必須重新建立條件陣列。雖然您可以將新的條件加入現有的 Conditions 陣列,但是新的條件並不會以正確的順序插入現有的條件陣列中。若要以正確的順序將新的條件插入條件陣列中,您必須將現有的條件分割為個別的變數、建立新的條件,然後在執行 Set-TransportRule 命令時,手動排序已經存在的變數與新的變數。例如,您有下列三個條件:

  • ExCondition1
  • ExCondition2
  • ExCondition3

您想要加入已指派給變數 $NewCondition 的新條件。若要加入新條件,您首先必須將現有的條件指派給變數 $ExVariable1$ExVariable2$ExVariable3。然後判定現有條件及新條件的正確順序。接著,使用命令 Set-TransportRule "Example" @($ExVariable1, $ExVariable2, $NewCondition, $ExVariable3),將現有條件及新條件指派給現有的傳輸規則。此命令會以您指定的條件陣列,取代先前設定的條件陣列。

如需新增或移除傳輸規則中存在之條件或例外狀況所需執行的詳細步驟,請參閱如何在 Exchange 管理命令介面中修改傳輸規則條件與例外狀況中的<修改傳輸規則中的條件或例外狀況>。

如需新增或移除傳輸規則中存在之動作所需執行的詳細步驟,請參閱如何在 Exchange 管理命令介面中修改傳輸規則動作中的<修改傳輸規則中的動作>。

修改傳輸規則上現有條件、例外狀況或動作的值

大部分條件上所設定的值,也是儲存在陣列中。然而,用來新增或移除條件中之值的程序,與用來修改條件的程序有些許不同。

當您想要移除在條件上設定的值時,必須重新建立該條件的值陣列,因為目前沒有可將元素從陣列中移除的簡單方式。

當您要移除在條件上設定的值時,首先必須記下該條件上的所有值,然後將它們重新套用至條件中,同時省略您不再需要的值。例如,您在 SubjectContains 條件上設定了 Value1Value2Value3,但是您不再需要 Value2。該條件已指派給 $Condition 變數。若要移除 Value2,您必須使用命令 $Condition.Words = @("Value1", "Value3"),重新建立條件的值陣列。

不過,若要將值加入現有的條件,您可以直接將值新增至條件中。例如,若要將 Value4 新增至本節先前描述的 SubjectContains 條件中,請使用命令 $Condition.Words += @("Value4")

note附註:
以上範例假設要進行修改的條件都可接受多個值。對於只能夠接受單一值的條件,也可以使用相同的程序。對於單一值條件,請不要使用陣列。

您可以使用修改條件的程序,來修改傳輸規則上的例外狀況。不過,您必須將程序中的單字 Condition 變更為單字 Exception

如需新增或移除傳輸規則中條件之設定值所需執行的詳細步驟,請參閱如何在 Exchange 管理命令介面中修改傳輸規則條件與例外狀況中的<修改傳輸規則中現有條件的值>。

若要修改傳輸規則上的動作,您可以使用類似程序來修改條件。不過,您必須在程序中將 Condition 一字變更為 Action 一字,而且您必須使用動作及動作內容來代替述詞及述詞內容。

如需新增或移除傳輸規則中動作之設定值所需執行的詳細步驟,請參閱如何在 Exchange 管理命令介面中修改傳輸規則動作中的<修改傳輸規則中現有動作的值>。

相關資訊

如需傳輸規則的相關資訊,請參閱下列主題:

若要確保您目前閱讀的是最新資訊,並尋找其他的 Exchange Server 2007 說明文件,請造訪 Exchange Server 技術資源中心.