Ändern von Aktionen von Transportregeln in der Exchange-Verwaltungsshell

 

Gilt für: Exchange Server 2007 SP3, Exchange Server 2007 SP2, Exchange Server 2007 SP1, Exchange Server 2007

Letztes Änderungsdatum des Themas: 2007-08-27

In diesem Thema wird erläutert, wie die Exchange-Verwaltungskonsole oder die Exchange-Verwaltungsshell zum Anzeigen einer vorhandenen Transportregel auf einem Computer verwendet wird, auf dem die Microsoft Exchange Server 2007-Serverfunktion Hub-Transport oder Edge-Transport installiert ist.

Weitere Informationen über die Agents für Transportregeln finden Sie unter Übersicht über Transportregeln.

Bevor Sie beginnen

Bevor Sie die im Folgenden beschriebenen Verfahren ausführen, lesen Sie Ändern einer Transportregel; hier finden Sie wichtige Informationen, die zum Ändern der Aktionen von Transportregeln erforderlich sind.

Damit Sie die nachstehenden Verfahren ausführen können, muss Folgendes an das verwendete Konto delegiert worden sein:

  • die Rolle Exchange-Organisationsadministrator

Um die folgenden Verfahren auf einem Computer ausführen zu können, auf dem die Serverfunktion Edge-Transport installiert ist, müssen Sie sich mit einem Konto anmelden, das Mitglied der lokalen Administratorgruppe auf dem betreffenden Computer ist.

Weitere Informationen über Berechtigungen, das Delegieren von Funktionen und die zum Verwalten von Exchange 2007 erforderlichen Rechte finden Sie unter Überlegungen zu Berechtigungen.

Sie müssen mit den folgenden Konzepten vertraut sein, um diese Verfahren ausführen zu können:

Weitere Informationen zur Exchange-Verwaltungsshell finden Sie unter Verwenden der Exchange-Verwaltungsshell.

Ändern der Aktionen einer Transportregel

Hinzufügen von Aktionen zu einer Transportregel

Zunächst müssen Sie die vorhandenen Aktionen erhalten. Weisen Sie jeder der vorhandenen Aktionen im Aktionsarray eine eigene Variable zu. Verwenden Sie die folgende Befehlssyntax, um das Aktionsarray einer Variablen zuzuweisen:

$ActionArray = (Get-TransportRule "<rule name>").Actions

So weisen Sie einer Variablen die Aktionen einer Transportregel zu und zeigen die Anzahl der im Array vorhandenen Aktionen an

  1. Führen Sie den folgenden Befehl aus, um das Aktionsarray einer Variablen zuzuweisen:

    $ActionArray = (Get-TransportRule "Test Rule").Actions
    
  2. Führen Sie den folgenden Befehl aus, um die Anzahl der Aktionen im Array anzuzeigen:

    $ActionArray.Length
    

Weisen Sie anschließend jeder Aktion im Array eine eigene Variable zu. Die Aktionen befinden sich in Arrayelementen, die von 0 bis $ActionArray.Length - 1 durchnummeriert sind. Verwenden Sie die folgende Syntax, um jedes Aktionsarrayelement einer eigenen Variablen zuzuweisen:

$ExistingAction<Array Element Number> = $ActionArray[<Array Element Number>]

So weisen Sie jedes Aktionsarrayelement einer eigenen Variablen zu

  • Führen Sie die folgenden Befehle aus:

    $ExistingAction0 = $ActionArray[0]
    $ExistingAction1 = $ActionArray[1]
    

Erstellen Sie anschließend die neue Aktion oder die neuen Aktionen. Sie können die Aktionen, die bereits auf die vorhandene Transportregel angewendet werden, nicht verwenden. Verwenden Sie die folgende Syntax, um einer Variablen eine neue Aktion zuzuweisen:

$NewAction = Get-TransportRuleAction <Action Name>

Eine Liste mit Transportregelaktionen finden Sie unter Aktionen von Transportregeln.

So fügen Sie eine neue Aktion einer neuen Variablen hinzu

  • Führen Sie den folgenden Befehl aus:

    $NewAction = Get-TransportRuleAction LogEvent
    

Nachdem Sie die neue Aktion einer neuen Variablen zugewiesen haben, weisen Sie der Aktion einen Wert zu. Verwenden Sie den folgenden Befehl, um der neuen Aktion einen Wert zuzuweisen:

$NewAction.<ActionProperty> = <Single Value or Array of Values>

Eine Liste der Eigenschaften von Transportregelaktionen und der erwarteten Formatierung ihrer Werte finden Sie unter Aktionen von Transportregeln.

So weisen Sie einer neuen Aktion Werte zu

  • Führen Sie den folgenden Befehl aus:

    $NewAction.LogMessage = "Transport Rule triggered"
    

Wenden Sie nach dem Erstellen aller neuen Aktionen die Aktionen auf die vorhanden Transportregel an. Verwenden Sie die folgende Befehlssyntax, um die Transportregel zu ändern:

Set-TransportRule <Transport Rule Name> -Action @(<Actions>)

Hinweis

Beim Angeben der Aktionen im Befehl Set-TransportRule müssen Sie die neuen Aktionen entsprechend ihrem Rank (Rang) sortieren. Verwenden Sie den Befehl Get-TransportRuleAction, um den Rang jeder der Aktionen anzuzeigen.

So ändern Sie die vorhandene Transportregel

  • Führen Sie den folgenden Befehl aus:

    Set-TransportRule "Test Rule" -Action @($ExistingAction0, $ExistingAction1, $NewAction)
    

Entfernen von Aktionen aus einer Transportregel

Führen Sie diese Schritte aus einem früheren Abschnitt in diesem Thema aus, um eine Aktion aus einer Transportregel zu entfernen:

  1. Weisen Sie einer Variablen die Aktionen einer Transportregel zu, und zeigen Sie die Anzahl der im Array vorhandenen Aktionen an.

  2. Weisen Sie jedes Aktionsarrayelement einer eigenen Variablen zu, mit Ausnahme der zu entfernenden Aktion.

  3. Ändern Sie die vorhandene Transportregel.

So entfernen Sie eine Aktion aus einer Transportregel

  1. Führen Sie den folgenden Befehl aus, um das Aktionsarray einer Variablen zuzuweisen:

    $ActionArray = (Get-TransportRule "Test Rule").Actions
    
  2. Führen Sie den folgenden Befehl aus, um die Anzahl der Aktionen im Array anzuzeigen:

    $ActionArray.Length
    
  3. Führen Sie den folgenden Befehl aus, um die Aktionen in der $ActionArray-Variablen anzuzeigen, und notieren Sie die Arrayelementnummer der zu entfernenden Aktion:

    $ActionArray
    
  4. Führen Sie die folgenden Befehle aus, um die beizubehaltenden Aktionen Variablen zuzuweisen, wobei Sie die Arrayelemente der Aktionen auslassen, die Sie nicht behalten möchten:

    $ExistingAction1 = $Action[1]
    ...
    
  5. Führen Sie den folgenden Befehl aus, um die Transportregel zu ändern, und weisen Sie nur die Variablen zu, die den beizubehaltenden Aktionen zugeordnet sind:

    Set-TransportRule "Test Rule" -Action @($ExistingAction1)
    

Ändern des Werts einer vorhandenen Aktion für eine Transportregel

Die Verfahren zum Ändern einer Aktion hängen davon ab, ob diese einen oder mehrere Werte zulässt. Wählen Sie das Verfahren, das dem Typ der zu ändernden Aktion entspricht.

Hinweis

In den folgenden Beispielen werden die auf Hub-Transport-Servern verfügbaren Aktionen von Transportregeln verwendet.

Um den Typ der zu ändernden Aktion zu bestimmen, lesen Sie Aktionen von Transportregeln.

Ändern einer vorhandenen Aktion mit einem Wert

Weisen Sie zuerst die Aktionen der vorhandenen Transportregel einer Variablen zu, und zeigen Sie das Array an. Verwenden Sie die folgende Befehlssyntax:

$ActionArray = (Get-TransportRule "Test Rule").Actions

So weisen Sie einer Variablen die Aktionen einer Transportregel zu und zeigen die Anzahl der im Array vorhandenen Aktionen an

  1. Führen Sie den folgenden Befehl aus, um das Aktionsarray einer Variablen zuzuweisen:

    $ActionArray = (Get-TransportRule "Test Rule").Actions
    
  2. Führen Sie den folgenden Befehl aus, um die Aktionen im Array anzuzeigen:

    $ActionArray
    

Bestimmen Sie, welche Aktion geändert werden soll, und notieren Sie seine Arrayelementnummer. Die erste Aktion im Array befindet sich im Arrayelement 0. Wenn die Aktion, die Sie ändern möchten, die dritte Aktion in der Liste ist, weist sie die Arrayelementnummer 2 auf. Anschließend müssen Sie die Aktionseigenschaft(en) bestimmen. Die Aktionseigenschaften sind immer unmittelbar vor der Zeile aufgelistet, die mit Name beginnt.

Weisen Sie nach dem Bestimmen der Arrayelementnummer den neuen Wert der betreffenden Aktion zu, und verwenden Sie dazu die folgende Befehlssyntax:

$ActionArray[<array element number>].<Action Property> = <Single Value>

Eine Liste der Eigenschaften von Transportregelaktionen und der erwarteten Formatierung ihrer Werte finden Sie unter Aktionen von Transportregeln.

So weisen Sie der "SetScl"-Aktion in Arrayelement 2 einen Wert zu

  • Führen Sie den folgenden Befehl aus:

    $ActionArray[2].SclValue = "7"
    

So ändern Sie die vorhandene Transportregel

  • Führen Sie den folgenden Befehl aus:

    Set-TransportRule "Test Rule" -Action $ActionArray
    

Hinweis

Die $ActionArray-Variable muss nicht in ein Array eingefügt werden, weil sich die $ActionArray-Variable bereits in einem Array befindet.

Hinzufügen von Werten zu einer vorhandenen Aktion mit mehreren Werten

Weisen Sie zuerst die Aktionen der vorhandenen Transportregel einer Variablen zu, und zeigen Sie das Array an. Verwenden Sie die folgende Befehlssyntax:

$ActionArray = (Get-TransportRule "Test Rule").Actions

So weisen Sie einer Variablen die Aktionen einer Transportregel zu und zeigen die Anzahl der im Array vorhandenen Aktionen an

  1. Führen Sie den folgenden Befehl aus, um das Aktionsarray einer Variablen zuzuweisen:

    $ActionArray = (Get-TransportRule "Test Rule").Actions
    
  2. Führen Sie den folgenden Befehl aus, um die Aktionen im Array anzuzeigen:

    $ActionArray
    

Bestimmen Sie, welche Aktion geändert werden soll, und notieren Sie deren Arrayelementnummer. Die erste Aktion im Array befindet sich im Arrayelement 0. Wenn die Aktion, die Sie ändern möchten, die dritte Aktion in der Liste ist, weist sie die Arrayelementnummer 2 auf. Anschließend müssen Sie die Aktionseigenschaft(en) bestimmen. Die Aktionseigenschaften der Aktion werden stets unmittelbar vor der mit Name beginnenden Zeile aufgelistet (siehe das folgende Beispiel):

Addresses         : {Legal Group, Regulatory Compliance}
Name              : RedirectMessage
Rank              : 10
LinkedDisplayText : redirect the message to <a id="Addresses">addresses</a>

RejectReason       : Example Message
EnhancedStatusCode : 5.7.1
Name               : RejectMessage
Rank               : 11
LinkedDisplayText  : send <a id="RejectReason">bounce message</a> to sender with <a id ="EnhancedStatusCode">enhanced status code</a>

In diesem Beispiel hat die erste Aktion beim Arrayelement 0 die Aktionseigenschaft Addresses. Die zweite Aktion beim Arrayelement 1 hat die Aktionseigenschaften RejectReason und EnhancedStatusCode.

Mithilfe der folgenden Befehlssyntax können Sie einer vorhandenen Aktion neue Werte hinzufügen:

$ActionArray[<Array Element Number>].<Action Property> += <Array of Values>

Eine Liste der Eigenschaften von Transportregelaktionen und der erwarteten Formatierung ihrer Werte finden Sie unter Aktionen von Transportregeln.

So fügen Sie in dem Beispiel einer beim Arrayelement 0 vorhandenen Aktion Werte hinzu

  • Führen Sie den folgenden Befehl aus:

    $ActionArray[0].Addresses += @((Get-DistributionGroup "Example Group 1"), (Get-DistributionGroup "Example Group 2))
    

So ändern Sie die vorhandene Transportregel

  • Führen Sie den folgenden Befehl aus:

    Set-TransportRule "Test Rule" -Action $ActionArray
    

Hinweis

Die Variable $ActionArray muss nicht in ein Array eingefügt werden, weil sich die Variable $ActionArray bereits in einem Array befindet.

Entfernen von Werten aus einer vorhandenen Aktion mit mehreren Werten

Um Werte aus einer vorhandenen Aktion zu entfernen, müssen Sie die vorhandenen Werte notieren und anschließend die vorhandenen Werte erneut in die Aktion eingeben, wobei Sie die nicht mehr gewünschten Werte weglassen. Beim folgenden Verfahren werden die vorhandenen Werte durch die von Ihnen angegebenen Werte ersetzt.

Hinweis

Das folgende Verfahren eignet sich gut für Aktionen, für die nur wenige Werte konfiguriert sind. Für Aktionen mit Dutzenden oder gar Hunderten von konfigurierten Werten ist dieses Verfahren jedoch nicht empfehlenswert. Es wird empfohlen, eine ForEach-Schleife zu verwenden, wenn das manuelle erneute Zuweisen von Werten zu einer Aktion zu aufwändig ist.
Weitere Informationen finden Sie unter Verwenden der Exchange-Verwaltungsshell.

Weisen Sie zuerst die Aktionen der vorhandenen Transportregel einer Variablen zu, und zeigen Sie das Array an. Verwenden Sie die folgende Befehlssyntax:

$ActionArray = (Get-TransportRule "Test Rule").Actions

So weisen Sie einer Variablen die Aktionen einer Transportregel zu und zeigen die Anzahl der im Array vorhandenen Aktionen an

  1. Führen Sie den folgenden Befehl aus, um das Aktionsarray einer Variablen zuzuweisen:

    $ActionArray = (Get-TransportRule "Test Rule").Actions
    
  2. Führen Sie den folgenden Befehl aus, um die Aktionen im Array anzuzeigen:

    $ActionArray
    

Zeigen Sie anschließend die Werte der Aktion an, die Sie ändern möchten, und ersetzen Sie die Werte dieser Aktion durch die Werte, die Sie beibehalten möchten. Weitere Informationen zum Bestimmen der Elementnummer und Aktionseigenschaften eines Aktionsarrays finden Sie weiter oben in diesem Thema unter "Hinzufügen von Werten zu einer vorhandenen Aktion mit mehreren Werten". Verwenden Sie die folgende Befehlssyntax:

$ActionArray[<Array Element Number>]

Ersetzen Sie anschließend die vorhandenen Werte der Aktion, die Sie ändern möchten, durch die Werte, die Sie beibehalten möchten. Verwenden Sie die folgende Befehlssyntax:

$ActionArray[<Array Element Number>].<Action Property> = <Array of Values>

Eine Liste der Eigenschaften von Transportregelaktionen und der erwarteten Formatierung ihrer Werte finden Sie unter Transportregelprädikate.

So entfernen Sie in dem obigen Beispiel Werte aus einer beim Arrayelement 0 vorhandenen Aktion

  1. Führen Sie den folgenden Befehl aus, um die aktuellen Werte anzuzeigen, die für die Aktion konfiguriert sind:

    $ActionArray[0]
    
  2. Führen Sie den folgenden Befehl aus, um die aktuellen Werte durch die gewünschten Werte zu ersetzen:

    $ActionArray[0].Addresses = @((Get-Mailbox "Kim Akers"),(Get-Mailbox "Frank Lee"))
    

So ändern Sie die vorhandene Transportregel

  • Führen Sie den folgenden Befehl aus:

    Set-TransportRule "Test Rule" -Action $ActionArray
    

    Hinweis

    Die Variable $ActionArray muss nicht in ein Array eingefügt werden, weil sich die Variable $ActionArray bereits in einem Array befindet.

Weitere Informationen

Ausführliche Informationen zu Syntax und Parametern für die einzelnen Befehle finden Sie unter den folgenden Themen:

Weitere Informationen zu Transportregeln finden Sie unter den folgenden Themen: