Exchange
Dieser Artikel wurde noch nicht bewertet - Dieses Thema bewerten.

Ä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 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.

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
  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>]
  • 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.

  • 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.

  • 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>)
Aa998224.note(de-de,EXCHG.80).gifHinweis:
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.
  • Führen Sie den folgenden Befehl aus:

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

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.
  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)
    

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.

Aa998224.note(de-de,EXCHG.80).gifHinweis:
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.

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
  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.

  • Führen Sie den folgenden Befehl aus:

    $ActionArray[2].SclValue = "7"
    
  • Führen Sie den folgenden Befehl aus:

    Set-TransportRule "Test Rule" -Action $ActionArray
    
Aa998224.note(de-de,EXCHG.80).gifHinweis:
Die $ActionArray-Variable muss nicht in ein Array eingefügt werden, weil sich die $ActionArray-Variable bereits in einem Array befindet.

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
  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.

  • Führen Sie den folgenden Befehl aus:

    $ActionArray[0].Addresses += @((Get-DistributionGroup "Example Group 1"), (Get-DistributionGroup "Example Group 2))
    
  • Führen Sie den folgenden Befehl aus:

    Set-TransportRule "Test Rule" -Action $ActionArray
    
Aa998224.note(de-de,EXCHG.80).gifHinweis:
Die Variable $ActionArray muss nicht in ein Array eingefügt werden, weil sich die Variable $ActionArray bereits in einem Array befindet.

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.

Aa998224.note(de-de,EXCHG.80).gifHinweis:
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
  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.

  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"))
    
  • Führen Sie den folgenden Befehl aus:

    Set-TransportRule "Test Rule" -Action $ActionArray
    
    Aa998224.note(de-de,EXCHG.80).gifHinweis:
    Die Variable $ActionArray muss nicht in ein Array eingefügt werden, weil sich die Variable $ActionArray bereits in einem Array befindet.
Fanden Sie dies hilfreich?
(1500 verbleibende Zeichen)