Grundlegendes zum Skript-Agent

 

Gilt für: Exchange Server 2010 SP2, Exchange Server 2010 SP3

Letztes Änderungsdatum des Themas: 2015-03-09

Mithilfe des Cmdlet-Erweiterungs-Agents "Skript-Agent" in Microsoft Exchange Server 2010 können Sie Ihre eigene Skriptlogik in die Ausführung von Exchange-Cmdlets einbringen. Mit dem Skript-Agent können Sie Bedingungen hinzufügen, Werte außer Kraft setzen und die Berichterstellung einrichten.

Warnung

Wenn Sie den Cmdlet-Erweiterungs-Agent "Skript-Agent" aktivieren, wird dieser immer aufgerufen, wenn ein Cmdlet auf einem Server ausgeführt wird, auf dem wiederum Exchange 2010 ausgeführt wird. Dies umfasst nicht nur Cmdlets, die von Ihnen direkt in der Exchange-Verwaltungsshell ausgeführt werden, sondern auch Cmdlets, die von Exchange-Diensten, der Exchange-Verwaltungskonsole und der Exchange-Systemsteuerung ausgeführt werden. Es wird dringend empfohlen, dass Sie Ihre Skripts und alle an der Konfigurationsdatei vorgenommenen Änderungen testen, bevor Sie die aktualisierte Konfigurationsdatei auf Ihre Exchange 2010-Server kopieren und den Cmdlet-Erweiterungs-Agent "Skript-Agent" aktivieren.

Sobald ein Exchange-Cmdlet ausgeführt wird, ruft das Cmdlet den Cmdlet-Erweiterungs-Agent "Skript-Agent" auf. Wenn dieser Agent aufgerufen wird, überprüft das Cmdlet, ob Skripts konfiguriert sind, die vom Cmdlet aufgerufen werden können. Wenn ein Skript für ein Cmdlet ausgeführt werden soll, versucht das Cmdlet, alle im Skript definierten APIs aufzurufen. Die folgenden APIs sind verfügbar und werden in der folgenden Reihenfolge aufgerufen:

  1. ProvisionDefaultProperties   Mithilfe dieser API können Werte von Eigenschaften für Objekte bei deren Erstellung festgelegt werden. Wenn Sie einen Wert festlegen, wird dieser Wert an das Cmdlet zurückgegeben und das Cmdlet legt den Wert für die Eigenschaft fest. Sie können Werte für Eigenschaften ausfüllen, wenn der Benutzer keinen Wert angegeben hat, oder Sie können den vom Benutzer angegebenen Wert außer Kraft setzen. Diese API berücksichtigt die Werte, die von Agents mit höherer Priorität festgelegt wurden. Der Cmdlet-Erweiterungs-Agent "Skript-Agent" setzt keine Werte außer Kraft, die von Agents mit höherer Priorität festgelegt wurden.

  2. UpdateAffectedIConfigurable   Mithilfe dieser API können die Werte von Eigenschaften für Objekte festgelegt werden, nachdem alle anderen Verarbeitungsschritte abgeschlossen sind, aber die Validate-API noch nicht aufgerufen wurde. Diese API berücksichtigt die Werte, die von Agents mit höherer Priorität festgelegt wurden. Der Cmdlet-Erweiterungs-Agent "Skript-Agent" setzt keine Werte außer Kraft, die von Agents mit höherer Priorität festgelegt wurden.

  3. Validate   Mithilfe dieser API können die Werte der Eigenschaften eines Objekts bestätigt werden, die vom Cmdlet festgelegt werden sollen. Diese API wird aufgerufen, kurz bevor ein Cmdlet mit dem Schreiben von Daten beginnt. Sie können Datenprüfungen konfigurieren, mit denen ein Cmdlet entweder erfolgreich ausgeführt werden oder fehlschlagen kann. Wenn ein Cmdlet die Datenprüfungen in dieser API besteht, darf das Cmdlet die Daten schreiben. Wenn das Cmdlet die Datenprüfungen nicht besteht, gibt es alle in dieser API definierten Fehler zurück.

  4. OnComplete   Diese API wird verwendet, nachdem sämtliche Cmdlet-Verarbeitungen abgeschlossen sind. Mit ihrer Hilfe können Nachbearbeitungsaufgaben ausgeführt werden, z. B. das Schreiben von Daten in eine externe Datenbank.

Hinweis

Der Cmdlet-Erweiterungs-Agent "Skript-Agent" wird nicht aufgerufen, wenn die Cmdlets mit dem Get-Verb ausgeführt werden. Der Agent wird auch nicht auf Exchange-Servern ausgeführt, auf denen die Edge-Transport-Serverrolle ausgeführt wird, da diese Serverrolle keine Cmdlet-Erweiterungs-Agents unterstützt.

Der Skript-Agent ist einer von mehreren Cmdlet-Erweiterungs-Agents. Weitere Informationen zu Cmdlet-Erweiterungs-Agents finden Sie unter Grundlegendes zu Cmdlet-Erweiterungs-Agents.

Inhalt

Konfigurationsdatei des Skript-Agents

Aktivieren des Skript-Agents

Priorität von Agents

Konfigurationsdatei des Skript-Agents

Die Konfigurationsdatei des Skript-Agents enthält alle Skripts, die vom Skript-Agent ausgeführt werden sollen. Skripts in der Konfigurationsdatei sind innerhalb von XML-Tags enthalten, die den Anfang und das Ende des Skripts und verschiedene Eingabeparameter definieren, die zum Übergeben von Daten an das Skript erforderlich sind. Skripts werden mithilfe der Windows PowerShell-Syntax geschrieben. Die Konfigurationsdatei ist eine XML-Datei, die die Elemente oder Attribute in der folgenden Tabelle verwendet.

Element Attribut Beschreibung

Configuration

Nicht zutreffend

Dieses Element enthält alle Skripts, die vom Cmdlet-Erweiterungs-Agent "Skript-Agent" ausgeführt werden können. Das Feature-Tag ist ein untergeordnetes Element dieses Tags.

Es gibt nur ein Configuration-Tag in der Konfigurationsdatei.

Feature

Nicht zutreffend

Dieses Element enthält eine Reihe von Skripts, die sich auf eine Funktion beziehen. Jedes im untergeordneten ApiCall-Tag definierte Skript erweitert einen bestimmten Teil der Cmdlet-Ausführungspipeline. Dieses Tag enthält die Attribute Name und Cmdlets.

Es kann mehrere Feature-Tags unter dem Configuration-Tag geben.

 

Name

Dieses Attribut enthält den Namen der Funktion. Mithilfe dieses Attributs können Sie bei der Ermittlung helfen, welche Funktion von den im Tag enthaltenen Skripts erweitert wird.

 

Cmdlets

Dieses Attribut enthält eine Liste der Exchange-Cmdlets, von denen die Skripts in dieser Funktionserweiterung verwendet werden. Mehrere Cmdlets können durch Kommata getrennt angegeben werden.

ApiCall

Nicht zutreffend

Dieses Element enthält Skripts, die einen Teil der Cmdlet-Ausführungspipeline erweitern können. Jedes Skript wird durch den API-Aufrufnamen in der Cmdlet-Ausführungspipeline definiert, die dieses erweitert. Nachfolgend finden Sie die API-Namen, die ausgeführt werden können:

  • ProvisionDefaultProperties

  • UpdateAffectedIConfigurable

  • Validate

  • OnComplete

 

Name

Dieses Attribut umfasst den Namen des API-Aufrufs, der die Cmdlet-Ausführungspipeline erweitert.

Common

Nicht zutreffend

Dieses Element enthält Funktionen, die von einem beliebigen Skript in der Konfigurationsdatei verwendet werden können.

Jeder Exchange 2010-Server enthält die Datei "ScriptingAgentConfig.xml.sample" im Ordner "<Installationspfad>\V14\Bin\CmdletExtensionAgents". Diese Datei muss auf jedem Exchange 2010-Server in "ScriptingAgentConfig.xml" umbenannt werden, wenn Sie den Cmdlet-Erweiterungs-Agent "Skript-Agent" aktivieren. Die Beispielkonfigurationsdatei enthält Beispielskripts, mit denen Sie herausfinden können, wie Skripts zur Konfigurationsdatei hinzugefügt werden.

Nachdem Sie ein Skript zur Konfigurationsdatei hinzugefügt oder eine Änderung an der Konfigurationsdatei vorgenommen haben, müssen Sie die Datei auf jedem Exchange 2010-Server im Unternehmen aktualisieren. Dies muss durchgeführt werden, um sicherzustellen, dass jeder Server eine aktuelle Version der Skripts enthält, die vom Cmdlet-Erweiterungs-Agent "Skript-Agent" ausgeführt werden.

Einige Zeichen, die typischerweise in Skripts verwendet werden, haben in XML auch eine spezielle Bedeutung. Verwenden Sie Escapefolgen, um diese Zeichen in Ihrem Skript zu verwenden. Die folgenden Zeichen verwenden z. B. eine Escapefolge:

  • Verwenden Sie anstelle des Größer-als-Zeichens (>) die Folge &gt;.

  • Verwenden Sie anstelle des Kleiner-als-Zeichens (<) die Folge $lt;.

  • Verwenden Sie anstelle eines kaufmännischen Und-Zeichens (&) die Folge &amp;.

Zurück zum Seitenanfang

Aktivieren des Skript-Agents

Der Cmdlet-Erweiterungs-Agent "Skript-Agent" ist standardmäßig deaktiviert. Wenn Sie den Skript-Agent aktivieren, ist der Agent für die gesamte Exchange 2010-Organisation aktiviert. Bevor Sie den Skript-Agent aktivieren, überprüfen Sie, dass die Konfigurationsdatei des Skript-Agents ordnungsgemäß umbenannt und mit Ihren Skripts auf jedem Exchange 2010-Server aktualisiert wurde. Sie erhalten bei jeder Ausführung eines Cmdlets eine Fehlermeldung, wenn Sie die Konfigurationsdatei nicht ordnungsgemäß umbenennen.

Gehen Sie wie folgt vor, um den Skript-Agent zu aktivieren:

  1. Benennen Sie die Beispieldatei "ScriptingAgentConfig.xml.sample" in <Installationspfad>\V14\Bin\CmdletExtensionAgents auf jedem Exchange 2010-Server in Ihrem Unternehmen in "ScriptingAgentConfig.xml" um.

    Hinweis

    Sie können die Konfigurationsdatei von einem Exchange 2010-Server auf andere Exchange 2010-Server kopieren. Stellen Sie sicher, dass Sie die zu kopierende Konfigurationsdatei aktualisieren, bevor Sie sie kopieren.

  2. Fügen Sie Ihr Skript auf jedem Exchange 2010-Server im Unternehmen zur umbenannten Konfigurationsdatei hinzu.

  3. Aktivieren Sie den Cmdlet-Erweiterungs-Agent "Skript-Agent". Weitere Informationen zum Aktivieren von Cmdlet-Erweiterungs-Agents finden Sie unter Aktivieren eines Cmdlet-Erweiterungs-Agents.

Zurück zum Seitenanfang

Priorität von Agents

Der Cmdlet-Erweiterungs-Agent "Skript-Agent" wird standardmäßig nach jedem anderen Agent ausgeführt, mit Ausnahme des Administratorüberwachungsprotokoll-Agents. Wenn ein von Ihnen erstelltes Skript einen vorhandenen Agent ersetzen soll, müssen Sie den anderen Agent entweder deaktivieren oder die Priorität eines der Agents ändern, damit der Cmdlet-Erweiterungs-Agent "Skript-Agent" zuerst ausgeführt wird. Weitere Informationen zum Deaktivieren oder Ändern der Priorität von Agents finden Sie in den folgenden Themen:

Zurück zum Seitenanfang