Transport-Agents

Gilt für: Exchange Server 2013

Mit Transport-Agents können Sie benutzerdefinierte Software von Microsoft, Drittanbietern oder Ihrer Organisation auf einem Exchange-Server installieren. Diese Software kann dann E-Mail-Nachrichten verarbeiten, die die Transportpipeline passieren. In Microsoft Exchange Server 2013 besteht die Transportpipeline aus den folgenden Prozessen:

  • Dem Front-End-Transport-Dienst auf Clientzugriffsservern

  • Dem Transportdienst auf Postfachservern

  • Dem Postfach-Transportdienst auf Postfachservern

  • Dem Transportdienst auf Edge-Transport-Servern

Weitere Informationen zur Transportpipeline finden Sie unter Nachrichtenübermittlung.

Wie bei den vorherigen Versionen von Exchange ermöglicht der Exchange 2013-Transport die Erweiterbarkeit über das Transport-Agents-SDK für Microsoft Exchange Server 2013. Die Exchange 2013-Version des SDK basiert auf der Microsoft .NET Framework Version 4.0 und ermöglicht Es Dritten, die folgenden vordefinierten Klassen zu implementieren:

  • SmtpReceiveAgent

  • RoutingAgent

  • DeliveryAgent

Wenn sie mit Bibliotheken im SDK abgeglichen werden, werden die sich ergebenden Assemblys mit Exchange 2013 registriert, wodurch die Agents geladen und ihre Ereignishandler in bestimmten Phasen der SMTP-Sitzungen oder während der Nachrichtenverarbeitung aufgerufen werden. Diese Phasen oder Ereignisse sind Teil der Agent-Definitionen. Die Agent-Registrierungsinformationen werden in einer XML-Konfigurationsdatei gespeichert.

In der folgenden Liste werden die Anforderungen für die Verwendung von Transport-Agents in Exchange 2013 erläutert.

  • Der Transportdienst auf Postfachservern und Edge-Transport-Servern unterstützt vollständig alle vordefinierten Klassen im SDK. Daher sollten alle Transport-Agents von Drittanbietern, die für die Hub-Transport- oder Edge-Transport-Serverrollen in Microsoft Exchange Server 2010 geschrieben wurden, im Transportdienst in Exchange 2013 funktionieren.

  • Der Front-End-Transportdienst unterstützt nur die SmtpReceiveAgent-Klasse im SDK, und Drittanbieter-Agents können nicht für das OnEndOfData SMTP-Ereignis arbeiten.

  • Der Postfachtransportdienst unterstützt das SDK überhaupt nicht, daher können Sie keine Drittanbieter-Agents im Postfachtransportdienst verwenden.

Die Unterstützung für Legacytransport-Agents, die auf Versionen vor .NET Framework, Version 4.0, basieren, ist nicht standardmäßig aktiviert, kann aber von Ihnen aktiviert werden. Anweisungen finden Sie unter Aktivieren der Unterstützung für Transport-Agents einer Vorversion.

Updates für die Transport-Agent-Verwaltung

Aufgrund der Updates für die Exchange 2013-Transportpipeline müssen die Transport-Agent-Cmdlets zwischen dem Transportdienst und dem Front-End-Transport-Dienst unterscheiden. Das gilt insbesondere, wenn der Clientzugriffsserver und der Postfachserver auf demselben Computer installiert sind. Weitere Informationen finden Sie unter Verwalten von Transport-Agents.

Transport Agent-Verwaltungs-Cmdlets bearbeiten eine Konfigurationsdatei unter %ExchangeInstallPath%TransportRoles\Shared. Für den Transportdienst auf Postfachservern und Edge-Transport-Servern lautet agents.configdie Datei . Für den Front-End-Transportdienst auf Clientzugriffsservern lautet fetagents.configdie Datei . Beide Dateien verwenden dasselbe Format wie in Exchange 2010. Weitere Informationen zur Verwaltung von Transport-Agents finden Sie unter Verwalten von Transport-Agents.

Transport-Agents und SMTP-Ereignisse

Transport-Agents verwenden SMTP-Ereignisse. Diese Ereignisse werden ausgelöst, wenn Nachrichten die Transportpipeline durchlaufen. SMTP-Ereignisse erlauben Transport-Agents den Zugriff auf Nachrichten an bestimmten Punkten während der SMTP-Konversation und beim Routing von Nachrichten durch die Organisation.

Bitte beachten Sie, dass in Exchange 2013 SMTP-Empfangsereignisse zur Verfügung stehen. SMTP Receive ist im Front-End-Transportdienst auf Clientzugriffsservern, dem Transportdienst auf Postfachservern und Edge-Transport-Servern sowie dem Postfachtransport-Zustellungsdienst auf Postfachservern verfügbar. Das Kategorisierungsmodul existiert nur im Transportdienst auf Postfachservern und Edge-Transport-Servern. Weitere Informationen zu Transportdiensten und dem Kategorisierungsmodul finden Sie unter E-Mail-Routing.

In den folgenden Tabellen sind die SMTP-Ereignisse aufgeführt, die Zugriff auf Nachrichten in der Transportpipeline bieten.

SMTP-Empfangsereignisse

Sequence SMTP-Ereignis Beschreibung

1

OnConnectEvent

Dieses Ereignis wird bei der Erstverbindung von einem Remote-SMTP-Host ausgelöst.

2

OnHeloCommand

Dieses Ereignis wird ausgelöst, wenn der HELO Befehl vom Remote-SMTP-Host ausgegeben wird.

3

OnEhloCommand

Dieses Ereignis wird ausgelöst, wenn der EHLO Befehl vom Remote-SMTP-Host ausgegeben wird.

4

OnStartTlsCommand

Dieses Ereignis wird ausgelöst, wenn der STARTTLS Befehl vom Remote-SMTP-Host ausgegeben wird.

5

OnAuthCommand

Dieses Ereignis wird ausgelöst, wenn der AUTH Befehl vom Remote-SMTP-Host ausgegeben wird.

6

OnProcessAuthentication

Dieses Ereignis wird ausgelöst, wenn die Authentifizierung am Remote-SMTP-Host verarbeitet wird.

7

OnEndOfAuthentication

Dieses Ereignis wird ausgelöst, wenn der Remote-SMTP-Host die Authentifizierung abgeschlossen hat.

8

OnXSessionParamsCommand

Dieses Ereignis wird ausgelöst, wenn der XSESSIONPARAMS Befehl vom Remote-SMTP-Host ausgegeben wird.

9

OnMailCommand

Dieses Ereignis wird ausgelöst, wenn der MAIL FROM Befehl vom Remote-SMTP-Host ausgegeben wird.

10

OnRcptToCommand

Dieses Ereignis wird ausgelöst, wenn der RCPT TO Befehl vom Remote-SMTP-Host ausgegeben wird.

11

OnDataCommand

Dieses Ereignis wird ausgelöst, wenn der DATA Befehl (Text) oder BDAT (Binärdaten) vom SMTP-Remotehost ausgegeben wird.

12

OnEndOfHeaders

Dieses Ereignis wird ausgelöst, wenn der Remote-SMTP-Host die Übermittlung der E-Mail-Nachrichtenkopfzeilen abgeschlossen hat. Dies wird durch eine leere Zeile (<CRLF>) angezeigt, die die Nachrichtenkopfzeilen und den Nachrichtentext trennt.

13

OnProxyInboundMessage

Dieses Ereignis wird ausgelöst, wenn eine eingehende SMTP-Sitzung mittels Relay oder Proxyweiterleitung durch den Front-End-Dienst auf einem Clientzugriffsserver an den Transportdienst auf einem Postfachserver gesendet wird.

14

OnEndOfData

Dieses Ereignis wird ausgelöst, wenn der Remote-SMTP-Host den Befehl "end of data" ausgibt. Für Textsitzungen, die mit dem DATA Befehl gestartet werden, ist <CRLF>.<CRLF>das Ende der Datenanzeige . Für binäre Sitzungen, die mit dem BDAT Befehl gestartet werden, ist BDAT LASTdas Ende des Datenindikators .

**

OnHelpCommand

Dieses Ereignis wird ausgelöst, wenn der HELP Befehl vom Remote-SMTP-Host ausgegeben wird.

**

OnNoopCommand

Dieses Ereignis wird ausgelöst, wenn der NOOP Befehl vom Remote-SMTP-Host ausgegeben wird.

**

OnReject

Dieses Ereignis wird ausgelöst, wenn der empfangende SMTP-Host einen temporären oder endgültigen Code für die Benachrichtigung über den Übermittlungsstatus an den sendenden SMTP-Host ausgibt.

**

OnRsetCommand

Dieses Ereignis wird ausgelöst, wenn der RSET Befehl vom sendenden SMTP-Host ausgegeben wird.

15

OnDisconnectEvent

Dieses Ereignis wird beim Trennen der Verbindung der SMTP-Konversation vom empfangenden oder sendenden SMTP-Host ausgelöst. In der Regel geschieht dies, wenn der QUIT Befehl vom Remote-SMTP-Host ausgegeben wird.

** Diese Ereignisse können jederzeit nach OnConnectEvent und vor OnDisconnectEvent auftreten.

Kategorisierungsereignisse

Sequence Kategorisierungsereignis Beschreibung

1

OnSubmittedMessage

Dieses Ereignis wird ausgelöst, wenn eine Nachricht in der Übermittlungswarteschlange im Transportdienst auf dem empfangenden Postfachserver oder Edge-Transport-Server ankommt.

2

OnResolvedMessage

Dieses Ereignis wird ausgelöst, nachdem alle Empfänger aufgelöst wurden, jedoch bevor der nächste Hop für die einzelnen Empfänger bestimmt wurde. Das Routingereignis OnResolvedMessage ermöglicht nachfolgenden Ereignissen die Außer-Kraft-Setzung des standardmäßigen Routingverhaltens mithilfe der SetRoutingOverride -Methode auf Empfängerbasis.

3

OnRoutedMessage

Dieses Ereignis wird ausgelöst, nachdem Nachrichten kategorisiert, Verteilerlisten erweitert und Empfänger aufgelöst wurden.

4

OnCategorizedMessage

Dieses Ereignis wird ausgelöst, wenn das Kategorisierungsmodul die Verarbeitung der Nachricht abgeschlossen hat.

Priorität von Transport-Agents

Zwei Faktoren entscheiden über die Reihenfolge, in der Transport-Agents Nachrichten in der Transportpipeline verarbeiten:

  1. Das SMTP-Ereignis, in dem der Transport-Agent registriert wird, und der Zeitpunkt, zu dem das SMTP-Ereignis Nachrichten verarbeitet.

  2. Der Prioritätswert, der dem Transport-Agent zugewiesen wird, wenn mehrere Agents für dasselbe SMTP-Ereignis registriert sind. Die höchste Priorität ist 1. Ein höherer Ganzzahlwert steht für eine niedrigere Agent-Priorität.

Angenommen, dass Sie z. B. die folgenden Transport-Agents konfiguriert haben:

  • Transport-Agent A mit der Priorität 1 und Transport-Agent C mit der Priorität 2 sind für das SMTP-Ereignis OnEndOfHeaders registriert.

  • Transport-Agent B mit der Priorität 4 ist für das SMTP-Ereignis OnMailCommand registriert.

Transport-Agent B wird zuerst auf Nachrichten angewendet, da das Ereignis OnMailCommand die Nachrichten vor dem Ereignis OnEndOfHeaders verarbeitet. Wenn die Nachrichten das Ereignis OnEndOfHeaders erreichen, wird Transport-Agent A vor Transport-Agent C angewendet, da Transport-Agent A eine höhere Priorität (geringerer Ganzzahlwert) als Transport-Agent C hat.

Integrierte Transport-Agents

Exchange 2013 enthält viele integrierte Transport-Agents, die Funktion wie Antispam, Transportregeln und Journale bieten. Die meisten der integrierten Transport-Agents auf Exchange 2013-Postfachservern und Clientzugriffsservern sind unsichtbar und können durch die Cmdlets zur Verwaltung von Transport-Agents nicht bearbeitet werden. Praktisch alle integrierten Transport-Agents, die sichtbar sind und verwaltet werden können, befinden sich im Transportdienst auf Postfachservern und Edge-Transport-Servern.

Die interessantesten integrierten Transport-Agents auf Postfachservern werden in der folgenden Tabelle beschrieben. Bitte beachten Sie, dass die Tabelle viele der unsichtbaren und nicht zu verwaltenden Transport-Agents enthält.

Interessante integrierte Transport-Agents auf Postfachservern

Name des Agents Verwaltbar? Priorität SMTP- oder Kategorisierungsereignisse

Transportregel-Agent

Ja

1

OnResolvedMessage

Malware-Agent

Ja

2

OnSubmittedMessage

SMS-Routing-Agent

Ja

3

OnSubmittedMessage

SMS-Zustellungs-Agent

Ja

4

N/V

Journal-Agent

Nein

Nicht konfigurierbar

OnRoutedMessage

Journalberichtentschlüsselungs-Agent

Nein

Nicht konfigurierbar

OnCategorizedMessage

RMS-Entschlüsselungs-Agent

Nein

Nicht konfigurierbar

OnSubmittedMessage

RMS-Verschlüsselungs-Agent

Nein

Nicht konfigurierbar

OnSubmittedMessage, OnRoutedMessage

RMS-Protokoll-Entschlüsselungs-Agent

Nein

Nicht konfigurierbar

OnEndOfData

Auf Edge-Transport-Servern sind die meisten integrierten Transport-Agents sichtbar und durch die Cmdlets zur Verwaltung von Transport-Agents oder durch andere featurespezifische Cmdlets verwaltbar.

Die interessantesten integrierten Transport-Agents auf Edge-Transport-Servern werden in der folgenden Tabelle beschrieben. Bitte beachten Sie, dass die Tabelle keine unsichtbaren oder unverwaltbaren Transport-Agents enthält.

Interessante integrierte Transport-Agents auf Edge-Transport-Servern

Name des Agents Verwaltbar? Priorität SMTP- oder Kategorisierungsereignisse

Verbindungsfilter-Agent

Ja

1

OnConnectEvent, OnMailCommand, OnRcptComand, OnEndOfHeaders

Adressumschreibungs-Agent für eingehende Nachrichten

Ja

2

OnRcptCommand, OnEndOfHeaders

Edge-Regel-Agent

Ja

3

OnEndOfData

Inhaltsfilter-Agent*

Ja

4

OnEndOfData

Absender-ID-Agent*

Ja

5

OnEndOfHeaders

Absenderfilter-Agent*

Ja

6

OnMailCommand, OnEndOfHeaders

Empfängerfilter-Agent

Ja

7

OnRcptCommand

Protokollanalyse-Agent*

Ja

8

OnConnectEvent, OnEndOfHeaders, OnEndOfData, OnReject, OnRsetCommand, OnDisconnectEvent

Anlagenfilter-Agent

Ja

9

OnEndOfData

Adressumschreibungs-Agent für ausgehende Nachrichten

Ja

10

OnSubmittedMessage, OnRoutedMessage

* Diese Antispam-Agents können Sie auch auf Postfachservern installieren und konfigurieren. Weitere Informationen finden Sie unter Aktivieren der Antispamfunktionen auf einem Postfachserver.

Problembehandlung von Transport-Agents

Zur Behebung von Problemen mit Transport-Agents können Sie die folgenden Features nutzen:

  • Get-TransportPipeline: Dieses Cmdlet zeigt die SMTP-Ereignisse und die entsprechenden Transport-Agents an, die auf Nachrichten auf dem Exchange Server stoßen. Weitere Informationen finden Sie unter Anzeigen von Transport-Agents in der Transportpipeline.

  • Pipelineablaufverfolgung: Die Pipelineablaufverfolgung erstellt eine genaue Momentaufnahme einer Nachricht vor und nach dem Auftreten jedes Transport-Agents. Dadurch können Sie nach Transport-Agents suchen, die unerwartete Ergebnisse herbeiführen. Weitere Informationen finden Sie unter Pipelineablaufverfolgung.