Importieren von Einträgen zum Umschreiben von Adressen

 

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

Letztes Änderungsdatum des Themas: 2007-02-19

In diesem Thema wird erläutert, wie die Exchange-Verwaltungsshell zum Importieren von Einträgen zum Umschreiben von Adressen auf einem Computer verwendet wird, auf dem die Microsoft Exchange Server 2007-Serverfunktion Edge-Transport installiert ist.

Sie können die Exchange-Verwaltungsshell verwenden, um Massenimportvorgänge von Einträgen zum Umschreiben von Adressen auf einem Edge-Transport-Server auszuführen. Im Folgenden sind einige häufige Szenarien beschrieben, in denen ein Massenimport von Einträgen zum Umschreiben von Adressen sinnvoll sein kann:

  • Migration   Es kann sinnvoll sein, einen Massenimport von Einträgen zum Umschreiben von Adressen aus einer früheren Lösung, die durch eine Edge-Transport-Serverlösung ersetzt wird, durchzuführen.

  • Auslagern   Möglicherweise muss ein Massenimport von Einträgen zum Umschreiben von Adressen vorgenommen werden, wenn Sie in Verträge mit Drittherstellern von Lösungen eintreten, deren E-Mail-Adressen umgeschrieben werden müssen.

  • Übernahme   Die Notwendigkeit zum Massenimport von Einträgen zum Umschreiben von Adressen kann eintreten, wenn die Übernahme anderer Organisationen ein vorübergehendes Umschreiben der E-Mail-Adressen der erworbenen Organisationen erforderlich macht.

Wenn Sie über mehr als einen Edge-Transport-Server verfügen, wird die Verwendung der folgenden Verfahren zum Importieren von Einträgen zum Umschreiben von Adressen in einen einzelnen Edge-Transport-Server und das anschließende Klonen der Konfiguration dieses Edge-Transport-Servers auf die anderen Edge-Transport-Server in der Organisation empfohlen.

Weitere Informationen zum Klonen eines Edge-Transport-Servers finden Sie unter Verwenden der geklonten Edge-Transport-Server-Konfiguration.

Bevor Sie beginnen

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 Gruppe Administratoren auf diesem Computer ist.

Sie müssen mit dem Erstellen von Einträgen zum Umschreiben von Adressen vertraut sein, bevor Sie versuchen, CSV-Dateien (Comma-Separated Value, durch Kommas getrennte Werte) zum Ausführen von Massenimportvorgängen von Einträgen zum Umschreiben von Adressen zu verwenden. Informationen zum Erstellen eines Eintrags zum Umschreiben von Adressen finden Sie unter Erstellen eines neuen Eintrags zum Umschreiben von Adressen.

Verfahren

Die folgenden Abschnitte unterstützen Sie beim Verständnis des Imports von Einträgen zum Umschreiben von Adressen mithilfe von CSV-Dateien:

  • Erstellen einer CSV-Datei   In diesem Abschnitt werden die erforderlichen und optionalen Felder in einer CSV-Datei beschrieben, die zum Importieren von Einträgen zum Umschreiben von Adressen verwendet werden können. Dieser Abschnitt enthält außerdem Beschreibungen der spezifischen Anforderungen beim Verwenden der Parameter ExceptionList und OutboundOnly in der CSV-Datei.

  • Grundlagen der Verwendung von CSV-Dateien für das Cmdlet „New-AddressRewriteEntry“   In diesem Abschnitt wird erläutert, wie die Exchange-Verwaltungsshell die in der CSV-Datei enthaltenen Daten formatiert und anschließend zum Importieren von Einträgen zum Umschreiben von Adressen verwendet.

  • Importieren einer CSV-Datei zum Erstellen mehrerer Einträge zum Umschreiben von Adressen   Dieser Abschnitt baut auf den Informationen in den vorhergehenden Abschnitten auf und enthält Anweisungen zur Verwendung der Befehle der Exchange-Verwaltungsshell, die zum Importieren einer CSV-Datei und ihrer Verwendung zum Erstellen mehrerer Einträge zum Umschreiben von Adressen erforderlich sind.

Erstellen einer CSV-Datei

Zuerst müssen Sie eine CSV-Datei erstellen, die Spalten mit Werten enthält, die den Parametern entsprechen, die vom Cmdlet New-AddressRewriteEntry benötigt werden. Die folgenden Werte werden vom Cmdlet New-AddressRewriteEntry benötigt und müssen daher entsprechende Spalten in der CSV-Datei aufweisen:

  • Name   Dieser Parameter muss eine Zeichenfolge sein, die den Eintrag zum Umschreiben von Adressen eindeutig identifiziert.

  • InternalEmailAddress   Dieser Parameter gibt die interne SMTP-Adresse (Simple Mail Transfer Protocol) an, die umgeschrieben werden soll.

  • ExternalEmailAddress   Dieser Parameter gibt die umzuschreibende externe SMTP-Adresse an.

Die folgenden Parameter sind optional. Spalten für diese Parameter können bei Bedarf in die CSV-Datei aufgenommen werden:

  • ExceptionList   In diesem Parameter ist die Liste der Unterdomänen angegeben, die nicht umgeschrieben werden sollen. In den angegebenen Unterdomänen enthaltene SMTP-Adressen werden nicht umgeschrieben.

  • OutboundOnly   In diesem Parameter wird angegeben, ob ein Eintrag zum Umschreiben von Adressen für SMTP-Adressen von Nachrichten zuständig sein soll, die aus der Exchange 2007-Organisation ausgehen und eingehen oder nur Nachrichten umschreiben soll, die aus der Exchange 2007-Organisation ausgehen.

Wenn Sie Werte für die Spalten ExceptionList und OutboundOnly in der CSV-Datei angeben, muss jede Zeile einen Wert in der betreffenden Spalte enthalten. Wenn Sie beispielsweise einen Wert für die Spalte ExceptionList in einer beliebigen Zeile der CSV-Datei angeben, müssen auch alle anderen Zeilen in der CSV-Datei einen Wert in dieser Spalte enthalten. Dies hat den Grund, dass der Parameter ExceptionList auf der Befehlszeile einen Wert aus der CSV-Datei erwartet.

Weitere Informationen über die einzelnen Parameter der Liste finden Sie unter New-AddressRewriteEntry.

Spezifische Anforderungen beim Aufnehmen des Parameters „ExceptionList“ in eine CSV-Datei

Wenn Sie mehrere Einträge zum Umschreiben von Adressen erstellen möchten und für einige Einträge Werte für den Parameter ExceptionList erforderlich sind, für andere jedoch nicht, müssen Sie diese Einträge zum Umschreiben von Adressen trennen und getrennte CSV-Dateien erstellen und anschließend jede dieser CSV-Dateien importieren. Darüber hinaus müssen Sie die für den Parameter ExceptionList verwendeten Werte in doppelte Anführungszeichen (") einschließen. Wenn Sie mehrere Domänen angeben möchten, die den Parameter ExceptionList aufweisen, müssen Sie die einzelnen Werte mithilfe von Kommas (,) trennen. Beispielsweise enthält die Zeichenfolge "domain1.com,domain2.com, domain3.com" drei Domänen, die in doppelte Anführungszeichen eingeschlossen und durch Kommas getrennt sind.

Spezifische Anforderungen beim Aufnehmen des Parameters „OutboundOnly“ in eine CSV-Datei

Wenn Sie Werte in der Spalte OutboundOnly in einer Zeile der CSV-Datei angeben, müssen Sie in jeder anderen Zeile der Spalte OutboundOnly der betreffenden CSV-Datei ebenfalls einen Wert angeben, genau wie beim Parameter ExceptionList. Diese Anforderung kann jedoch leicht gehandhabt werden, indem Sie für jede Zeile angeben, ob der Parameter OutboundOnly den Wert True oder False aufweisen soll.

Im Gegensatz zur Verwendung Boolescher Werte an anderen Stellen in der Exchange-Verwaltungsshell müssen Sie zur Angabe eines Werts für den Parameter OutboundOnly in einer CSV-Datei die Werte True und False angeben, nicht $True und $False. Dies hat den Grund, dass der Wert in der CSV-Datei manuell in einen Booleschen Wert konvertiert wird, wenn die CSV-Datei auf der Befehlszeile interpretiert wird.

Weitere Informationen über die Fälle, in denen der Parameter OutboundOnly verwendet werden muss und über die Art seiner Verwendung finden Sie im Abschnitt "Überlegungen zur Verwendung des Umschreibens von Adressen nur für ausgehende Nachrichten" in Planung für das Umschreiben von Adressen.

Beispiel einer CSV-Datei mit aufgefüllten optionalen Parametern

Im folgenden Beispiel wird dargestellt, wie eine CSV-Datei mit den optionalen Parametern ExceptionList und OutboundOnly mit Werten aufgefüllt werden kann:

Name,InternalAddress,ExternalAddress,ExceptionList,OutboundOnly
"Wingtip UK", *.wingtiptoys.co.uk, tailspintoys.com,"legal.wingtiptoys.co.uk,finance.wingtiptoys.co.uk,support.wingtiptoys.co.uk",True
"Wingtip USA", *.wingtiptoys.com, tailspintoys.com,"legal.wingtiptoys.com,finance.wingtiptoys.com,support.wingtiptoys.com,corp.wingtiptoys.com",True
"Wingtip Canada", *.wingtiptoys.ca, tailspintoys.com,"legal.wingtiptoys.ca,finance.wingtiptoys.ca,support.wingtiptoys.ca",True

Im folgenden Beispiel wird dargestellt, wie eine CSV-Datei mit dem optionalen Parameter OutboundOnly mit Werten aufgefüllt werden kann:

Name,InternalAddress,ExternalAddress,OutboundOnly
"Contoso Sales",*.sales.contoso.com,contoso.com,True
"Contoso Research",*.research.contoso.com,contoso.com,True
"Contoso UK",*.contoso.co.uk,contoso.com,True
"Contoso Japan",*.contoso.co.jp,contoso.com,True
"Contoso Support",support@adatum.com,support@contoso.com,False
"Contoso Financial External",contosofinancial@woodgrovebank.com,financialinqueries@contoso.com,False

Grundlagen zur Verwendung von CSV-Dateien für das Cmdlet "New-AddressRewriteEntry"

Zum Importieren von Einträgen zum Umschreiben von Adressen mithilfe von CSV-Dateien muss das Cmdlet Import-Csv verwendet werden. Das Cmdlet Import-Csv liest die CSV-Datei und gibt jede Zeile in der CSV-Datei als Arrayelement und jede Spalte in der Zeile als Eigenschaft dieses Arrayelements aus. Ein Beispiel für diese Syntax finden Sie in der CSV-Datei im "Beispiel einer CSV-Datei mit aufgefüllten optionalen Parametern" weiter oben in diesem Thema. Importieren Sie die CSV-Beispieldatei mithilfe des folgenden Befehls, nachdem Sie den Text im Beispiel in eine Datei mit dem Namen example.csv kopiert haben:

$CsvContents = Import-Csv c:\example.csv

Geben Sie anschließend den folgenden Befehl auf der Befehlszeile ein:

$CsvContents

Die folgenden Daten werden zurückgegeben:

Name                InternalAddress     ExternalAddress     OutboundOnly
----                ---------------     ---------------     ------------
Contoso Sales       *.sales.contoso.com contoso.com         True
Contoso Research    *.research.conto... contoso.com         True
Contoso UK          *.contoso.co.uk     contoso.com         True
Contoso Japan       *.contoso.co.jp     contoso.com         True
Contoso Support     support@adatum.com  support@contoso.com False
Contoso Financia... contosofinancial... financialinqueri... False

Wenn Sie nur den in der Spalte InternalAddress in der dritten Zeile enthaltenen Wert anzeigen möchten, können Sie den folgenden Befehl verwenden:

$CsvContents[2].InternalAddress

Dieser Befehl gibt den Wert *.contoso.co.uk zurück.

Hinweis

Beginnen Sie immer mit 0. Wenn Sie daher die Werte der dritten Zeile abrufen möchten, müssen Sie das Arrayelement 2 angeben. Weitere Informationen zu Arrays finden Sie unter Arrays.

Das Verstehen dieses Beispiels erleichtert Ihnen das Verständnis für die Weise, wie die CSV-Datei von der Exchange-Verwaltungsshell verarbeitet und zum Übergeben von Daten an das Cmdlet New-AddressRewriteEntry verwendet wird.

Wie Sie aus diesem Beispiel ersehen können, wird jede Zeile in der CSV-Datei zu einem Arrayelement, und jede Spalte wird zu einer Eigenschaft dieses Arrayelements. Durch Verwenden des Cmdlets ForEach kann die Exchange-Verwaltungsshell automatisch vom Anfang bis zum Ende durch das Array fortschreiten und für jedes Arrayelement – in diesem Fall, eine Zeile der CSV-Datei – die definierten Aktionen ausführen. Nachdem ein Arrayelement an das Cmdlet ForEach in der Pipeline übergeben wurde, kann die Exchange-Verwaltungsshell auf die Eigenschaften zugreifen, die darin gespeichert sind. In diesem Fall stellen die Eigenschaften die in jeder Zeile enthaltenen Spalten dar.

Anschließend können Sie diese Eigenschaften verwenden, um den Befehl New-AddressRewiteEntry zu konstruieren, der zum Erstellen von Einträgen zum Umschreiben von Adressen erforderlich ist. Diese Eigenschaften werden mithilfe der Spaltenüberschriften in der CSV-Datei benannt. Sie müssen nicht mit dem Parameternamen im Cmdlet übereinstimmen. Der folgende Befehl ist aus der Erläuterung dieses Beispiels konstruiert:

Import-Csv c:\example.csv | ForEach { New-AddressRewriteEntry -Name $_.Name -InternalAddress $_.InternalAddress -ExternalAddress $_.ExternalAddress -OutboundOnly ([Bool]::Parse($_.OutboundOnly)) -ExceptionList ($_.ExceptionList.Split(","))}

Hinweis

Sie müssen nicht eine importierte CSV-Datei einer Variablen zuweisen, wie es im Beispiel am Anfang dieses Abschnitts gezeigt wurde. Sie können auch einfach das Cmdlet Import-Csv einschließen und die Ausgabe des Cmdlets mithilfe eines Pipe-Befehls an das Cmdlet ForEach umleiten, wie in diesem Beispiel gezeigt.

Dieser Befehl iteriert über alle Zeilen in der example.csv-Datei und verwendet anschließend das Cmdlet New-AddressRewriteEntry, um Einträge zum erneuten Schreiben von Adressen mithilfe der aus den Spalten bezogenen Parameterwerte, die in den einzelnen Spalten enthalten sind, zu erstellen.

Vermutlich ist Ihnen die besondere Variable $_ in diesem Befehl aufgefallen. Die besondere Variable $_ weist den Befehl an, das aktuelle Objekt in der Pipeline zu untersuchen. In diesem Fall ist das die aktuelle Zeile der CSV-Datei.

Die Eigenschaften OutboundOnly und ExceptionList weisen darüber hinaus zusätzlichen Text auf, der die jeweiligen Eigenschaften umgibt. Der Text ([Bool]::Parse($_.OutboundOnly)) weist die Exchange-Verwaltungsshell an, die in der Eigenschaft OutboundOnly enthaltene Zeichenfolge als Booleschen Wert zu interpretieren. Der Text ($_.ExceptionList.Split(",")) weist die Exchange-Verwaltungsshell an, mehrere in der Eigenschaft ExceptionList enthaltene Werte mithilfe von Kommas aufzuteilen. Ohne umgebenden Text um die Eigenschaft ExceptionList werden die in der Eigenschaft ExceptionList enthaltenen Werte als einzelne Zeichenfolge behandelt, selbst dann, wenn sie Kommas enthalten.

Weitere Informationen zum Pipelining finden Sie unter Pipelining.

Importieren einer CSV-Datei zum Erstellen mehrerer Einträge zum Umschreiben von Adressen

Da Sie nun verstehen, was hinter den Kulissen geschieht, können Sie eine CSV-Datei erstellen und sie zum Erstellen mehrerer Einträge zum Umschreiben von Adressen verwenden. Erstellen Sie eine CSV-Datei, die mindestens die Spalten Name, InternalAddress und ExternalAddress aufweist. Wenn Sie Werte für die Parameter ExternalAddress und OutboundOnly angeben möchten, fügen Sie auch diese Spalten hinzu. Beachten Sie, dass jede Zeile einen Wert in jeder Spalte aufweisen muss. Ein Beispiel für einen passend formatierte CSV-Datei finden Sie in den Beispielen in "Beispiel einer CSV-Datei mit aufgefüllten optionalen Parametern" weiter oben in diesem Thema.

Verwenden Sie die folgende Befehlssyntax zum Erstellen mehrerer Einträge zum Umschreiben von Adressen mithilfe einer CSV-Datei:

Import-Csv <CSV file path> | ForEach { New-AddressRewriteEntry -Name $_.<Name CSV column heading> -InternalAddress $_.<InternalAddress CSV column heading> -ExternalAddress $_.<ExternalAddress CSV column heading> -OutboundOnly ([Bool]::Parse($_.<OutboundOnly CSV column heading>)) -ExceptionList ($_.<ExceptionList CSV column heading>.Split(","))}

So verwenden Sie eine CSV-Datei in der Exchange-Verwaltungsshell zum Erstellen mehrerer Einträge zum Umschreiben von Adressen

  1. Erstellen Sie eine CSV-Datei mit dem Namen C:\ImportAddressRewriteEntries.csv, und füllen Sie diese mit Daten auf.

  2. Führen Sie den folgenden Befehl aus:

    Import-Csv c:\ImportAddressRewriteEntries.csv | ForEach { New-AddressRewriteEntry -Name $_.Name -InternalAddress $_.InternalAddress -ExternalAddress $_.ExternalAddress -OutboundOnly ([Bool]::Parse($_.OutboundOnly)) -ExceptionList ($_.ExceptionList.Split(","))}
    

Ausführliche Informationen zu Syntax und Parametern finden Sie unter New-AddressRewriteEntry.