Ändern von mehrwertigen Eigenschaften

Gilt für: Exchange Server 2010

Letztes Änderungsdatum des Themas: 2009-10-14

In diesem Thema wird erläutert, wie Sie mithilfe der Exchange-Verwaltungsshell Werte zu einer mehrwertigen Eigenschaft eines Objekts hinzufügen bzw. Werte aus einer mehrwertigen Eigenschaft entfernen.

Übersicht über mehrwertige Eigenschaften

Eine mehrwertige Eigenschaft ist eine Eigenschaft, die mehr als einen Wert enthalten kann. Die Eigenschaft BlockedRecipients des Objekts RecipientFilterConfig kann beispielsweise mehrere Empfängeradressen enthalten, wie nachfolgend dargestellt:

  • john@contoso.com
  • kim@northwindtraders.com
  • david@adatum.com

Da die Eigenschaft BlockedRecipients mehrere Werte akzeptiert, wird sie als mehrwertige Eigenschaft bezeichnet.

Weitere Informationen zu Objekten finden Sie unter Strukturierte Daten.

Ändern mehrwertiger Eigenschaften im Vergleich zum Ändern einwertiger Eigenschaften

Das Ändern einer mehrwertigen Eigenschaft unterscheidet sich geringfügig vom Ändern einer Eigenschaft, die nur einen Wert akzeptiert. Wenn Sie eine Eigenschaft ändern, die nur einen einzigen Wert akzeptiert, können Sie dieser Eigenschaft einen Wert direkt zuweisen, wie im folgenden Befehl dargestellt.

Set-TransportConfig -MaxSendSize 12MB

Wenn Sie der Eigenschaft MaxSendSize mit diesem Befehl einen neuen Wert zuweisen, wird der gespeicherte Wert überschrieben. Bei einwertigen Eigenschaften ist dies unproblematisch. Bei mehrwertigen Eigenschaften stellt dies jedoch ein Problem dar. Angenommen, die Eigenschaft BlockedRecipients der Eigenschaft RecipientFilterConfig ist für die drei Werte konfiguriert, die im voranstehenden Abschnitt aufgeführt sind. Wenn Sie den Befehl Get-RecipientFilterConfig | Format-List BlockedRecipients ausführen, wird Folgendes angezeigt.

BlockedRecipients : {david@adatum.com, kim@northwindtraders.com, john@contoso.com}

Angenommen, Sie werden nun gebeten, eine neue SMTP-Adresse zur Liste der blockierten Empfänger hinzuzufügen. Um die neue SMTP-Adresse hinzuzufügen, führen Sie den folgenden Befehl aus.

Set-RecipientFilterConfig -BlockedRecipients chris@contoso.com

Wenn Sie den Befehl Get-RecipientFilterConfig | Format-List BlockedRecipients erneut ausführen, wird Folgendes angezeigt.

BlockedRecipients : {chris@contoso.com}

Dies ist nicht, was Sie erwartet haben. Sie wollten die neue SMTP-Adresse zur vorhandenen Liste der blockierten Empfänger hinzufügen, stattdessen wurde die vorhandene Liste der blockierten Empfänger jedoch durch die neue SMTP-Adresse ersetzt. Dies ist der Unterschied beim Ändern mehrwertiger und einwertiger Eigenschaften. Wenn Sie eine mehrwertige Eigenschaft ändern, müssen Sie sicherstellen, dass Werte hinzugefügt bzw. einzelne Werte entfernt werden und nicht die gesamte Werteliste überschrieben wird. In den folgenden Abschnitten wird veranschaulicht, die Sie genau dies tun.

Hinweis

Einige Cmdlets, z. B. Set-TransportRule, unterstützen das in diesem Thema beschriebene Vorgehen zum Ändern von Eigenschaften für Objekte nicht. Weitere Informationen dazu, wie Sie Werte zu mehrwertigen Eigenschaften dieser Cmdlets hinzufügen bzw. aus diesen entfernen, finden Sie in den Themen zu diesen Cmdlets, z. B. Set-TransportRule.

Um mehrwertige Eigenschaften zu ändern, müssen Sie die folgenden Konzepte verstehen:

Hinzufügen eines Werts zu einer mehrwertigen Eigenschaft

Sie können problemlos einen Wert zu einer mehrwertigen Eigenschaft hinzufügen. Dazu benötigen Sie nur wenige Schritte. Nehmen Sie wieder an, dass die Eigenschaft BlockedRecipients die Werte enthält, die im ersten Abschnitt dieses Themas aufgeführt sind.

Zuerst müssen Sie das Objekt abrufen, das Sie ändern möchten, und es einer Variablen zuweisen. Wenn Sie beispielsweise der Variablen $Example das Objekt RecipientFilterConfig zuweisen möchten, verwenden Sie den folgenden Befehl.

$Example = Get-RecipientFilterConfig

Wenn Sie den Befehl $Example | Format-List BlockedRecipients ausführen, wird Folgendes zurückgegeben.

BlockedRecipients : {david@adatum.com, kim@northwindtraders.com, john@contoso.com}

Als Nächstes müssen Sie den Wert angeben, den Sie zur Eigenschaft BlockedRecipients für das Objekt in der Variablen $Example hinzufügen möchten. Beachten Sie, dass über diesen Schritt der Wert nur zu dem in der Variablen gespeicherten Objekt hinzugefügt wird. Um chris@contoso.com zur Eigenschaft BlockedRecipients für das Objekt in der Variablen $Example hinzuzufügen, führen Sie den folgenden Befehl aus.

$Example.BlockedRecipients += "chris@contoso.com"

Wenn Sie den Befehl $Example | Format-List BlockedRecipients erneut ausführen, wird Folgendes zurückgegeben.

BlockedRecipients : {david@adatum.com, kim@northwindtraders.com, john@contoso.com, chris@contoso.com}

Wie Sie sehen, wurde die SMTP-Adresse chris@contoso.com zur Liste der in der Eigenschaft BlockedRecipients gespeicherten Werte hinzugefügt.

Schließlich müssen Sie das in $Example enthaltene Objekt mit dem folgenden Befehl speichern.

Set-RecipientFilterConfig -BlockedRecipients $Example.BlockedRecipients

Wenn Sie jetzt den Befehl Get-RecipientFilterConfig | Format-List BlockedRecipients ausführen, werden Sie feststellen, dass die SMTP-Adresse chris@contoso.com zum Server hinzugefügt wurde.

Hinzufügen mehrerer Werte zu einer mehrwertigen Eigenschaft

Zum gleichzeitigen Hinzufügen mehrerer Werte zu einer mehrwertigen Eigenschaft führen Sie dieselben Schritte wie oben beschrieben aus. Beim Angeben der Werte, die Sie hinzufügen möchten, trennen Sie diese durch Kommas, wie im folgenden Beispiel dargestellt.

$Example.BlockedRecipients += "user1@contoso.com", "user2@contoso.com", "user3@contoso.com"

Nachdem Sie die gewünschten Werte angegeben haben, speichern Sie das Objekt mithilfe des Cmdlets Set-RecipientFilterConfig.

Hinweis

Mit einigen Cmdlets können Sie nicht mehrere Werte gleichzeitig hinzufügen.

Entfernen eines Werts aus einer mehrwertigen Eigenschaft

Möglicherweise müssen Sie einen einzelnen Wert aus einer mehrwertigen Eigenschaft entfernen, ohne die übrigen Werte zu löschen. Das Entfernen eines einzelnen Werts aus einer mehrwertigen Eigenschaft gleicht dem Hinzufügen eines Werts. Sie können allerdings nicht mehrere Werte gleichzeitig entfernen. Nehmen Sie wieder an, dass die Eigenschaft BlockedRecipients die Werte enthält, die im ersten Abschnitt dieses Themas aufgeführt sind.

Zuerst weisen Sie das zu ändernde Objekt einer Variablen zu, wie im folgenden Beispiel dargestellt.

$Example = Get-RecipientFilterConfig

Führen Sie dann den folgenden Befehl aus, der den genauen Wert angibt, der entfernt werden soll.

$Example.BlockedRecipients -= "david@contoso.com"

Speichern Sie schließlich das in der Variablen enthaltene Objekt wie folgt.

Set-RecipientFilterConfig -BlockedRecipients $Example.BlockedRecipients

Beispiele für das Hinzufügen von Werten zu mehrwertigen Eigenschaften

Die folgenden Shellverfahren sind Beispiele für das Hinzufügen von Werten zu einigen der mehrwertigen Eigenschaften, die für verschiedene Objekte in Microsoft Exchange Server 2010 verfügbar sind.

In diesem Beispiel wird eine SMTP-Adresse zum Postfach "Kim Akers" hinzugefügt.

$Mailbox = Get-Mailbox "Kim Akers"
$Mailbox.EmailAddresses += "kim@contoso.com"
Set-Mailbox "Kim Akers" -EmailAddresses $Mailbox.EmailAddresses

In diesem Beispiel werden der Name und die E-Mail-Adressen für das aktualisierte Postfach "Kim Akers" abgerufen.

Get-Mailbox "Kim Akers" | Format-List Name, EmailAddresses

In diesem Beispiel werden zusätzliche DSN-Codes (Delivery Status Notification, Benachrichtigung über den Zustellungsstatus) zur Eigenschaft GenerateCopyOfDSNFor hinzugefügt.

$DsnList = Get-TransportConfig
$DsnList.GenerateCopyOfDSNFor += "5.4.7", "5.7.1", "5.7.2"
Set-TransportConfig -GenerateCopyOfDSNFor $DsnList.GenerateCopyOfDSNFor

In diesem Beispiel werden die DSN-Codes, einschließlich der hinzugefügten Codes, abgerufen.

Get-TransportConfig | Format-List GenerateCopyOfDSNFor

Beispiele für das Entfernen von Werten aus mehrwertigen Eigenschaften

Die folgenden Verfahren sind Beispiele für das Entfernen von Werten aus einigen der mehrwertigen Eigenschaften, die für verschiedene Objekte in Exchange 2010 verfügbar sind.

In diesem Beispiel wird die Geräte-ID eines aktivierten Microsoft Exchange ActiveSync-Geräts aus dem Postfach eines Clientzugriffsservers entfernt.

$CasDevice = Get-CasMailbox "David Simpson"
$CasDevice.ActiveSyncAllowedDeviceIDs -= "4B9207650054767AD0AEE83A414BCD7F"
Set-CasMailbox "David Simpson" -ActiveSyncAllowedDeviceIDs $CasDevice.ActiveSyncAllowedDeviceIDs

In diesem Beispiel wird die aktualisierte Liste der Geräte-IDs abgerufen.

Get-CasMailbox "David Simpson" | Format-List Name, ActiveSyncAllowedDeviceIDs

In diesem Beispiel wird ein Postfach aus der Liste mit Postfächern entfernt, die über die Berechtigung "Senden im Auftrag von" für die Verteilergruppe "Sales Group" verfügen.

$DistributionGroup = Get-DistributionGroup "Sales Group"
$DistributionGroup.GrantSendOnBehalfTo -= (Get-Mailbox "Christine Koch").Identity
Set-DistributionGroup "Sales Group" -GrantSendOnBehalfTo $DistributionGroup.GrantSendOnBehalfTo

In diesem Beispiel wird die aktualisierte Liste mit Postfächern abgerufen, die über die Berechtigung "Senden im Auftrag von" für die Verteilergruppe "Sales Group" verfügen.

Get-DistributionGroup "Sales Group" | Format-List Name, GrantSendOnBehalfTo