Condividi tramite


Modifica delle proprietà multivalore

Si applica a: Exchange Server 2010

Ultima modifica dell'argomento: 2009-10-14

In questo argomento viene descritto come utilizzare Exchange Management Shell per aggiungere e rimuovere valori da una proprietà multivalore di un oggetto.

Cenni preliminari sulle proprietà multivalore

Una proprietà multivalore è una proprietà che può contenere più valori. Ad esempio, la proprietà BlockedRecipients dell'oggetto RecipientFilterConfig può accettare più indirizzi di destinatari come nei seguenti esempi:

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

Dato che la proprietà BlockedRecipients può accettare più valori, viene definita proprietà multivalore.

Per ulteriori informazioni sugli oggetti, vedere Dati strutturati.

Confronto tra la modifica di una proprietà multivalore e la modifica di una proprietà che accetta un valore singolo

Il metodo utilizzato per la modifica di una proprietà multivalore è leggermente diverso da quello che consente di modificare una proprietà che accetta un unico valore. Quando si modifica una proprietà che accetta un unico valore, è possibile assegnare un valore direttamente alla proprietà, come nel comando riportato di seguito.

Set-TransportConfig -MaxSendSize 12MB

Quando si utilizza questo comando per fornire un nuovo valore alla proprietà MaxSendSize, il valore archiviato viene sovrascritto. Ciò non costituisce un problema con le proprietà che accettano un unico valore. Tuttavia, la situazione diventa problematica nel caso di proprietà multivalore. Ad esempio, si supponga che la proprietà BlockedRecipients nella proprietà RecipientFilterConfig sia configurata per avere i tre valori elencati nella sezione precedente. Quando si esegue il comando Get-RecipientFilterConfig | Format-List BlockedRecipients, vengono visualizzate le seguenti informazioni.

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

Si supponga ora di aver ricevuto una richiesta per aggiungere un nuovo indirizzo SMTP all'elenco dei destinatari bloccati. Per aggiungere il nuovo indirizzo SMTP, viene eseguito il comando riportato di seguito.

Set-RecipientFilterConfig -BlockedRecipients chris@contoso.com

Quando si esegue nuovamente il comando Get-RecipientFilterConfig | Format-List BlockedRecipients, vengono visualizzate le seguenti informazioni.

BlockedRecipients : {chris@contoso.com}

Pertanto, non si ottengono i risultati previsti. Si desiderava aggiungere il nuovo indirizzo SMTP all'elenco di destinatari bloccati esistente, mentre invece tale elenco è stato sovrascritto dal nuovo indirizzo SMTP. In ciò la modifica di una proprietà multivalore è diversa dalla modifica di una proprietà che accetta un unico valore. Quando si modifica una proprietà multivalore, è necessario accertarsi di aggiungere o rimuovere valori anziché sovrascrivere l'intero elenco di valori esistente. Nelle seguenti sezioni viene descritto come ottenere i risultati desiderati.

Nota

Alcuni cmdlet, ad esempio Set-TransportRule, non supportano la modifica di proprietà di oggetti con il metodo descritto in questo argomento. Per ulteriori informazioni su come aggiungere e rimuovere valori dalle proprietà multivalore di tali cmdlet, vedere gli argomenti relativi ai cmdlet, ad esempio Set-TransportRule.

Per modificare le proprietà multivalore, è necessario comprendere i concetti descritti di seguito:

Aggiunta di un valore a una proprietà multivalore

L'aggiunta di un valore a una proprietà multivalore è una procedura semplice. Richiede solo alcuni passaggi aggiuntivi. Si supponga nuovamente che la proprietà BlockedRecipients contenga i valori elencati nella prima sezione di questo argomento.

In primo luogo, è necessario recuperare l'oggetto che si desidera modificare e assegnarlo a una variabile. Ad esempio, utilizzare il comando riportato di seguito per assegnare l'oggetto RecipientFilterConfig alla variabile $Example.

$Example = Get-RecipientFilterConfig

Se si esegue il comando $Example | Format-List BlockedRecipients, vengono restituite le seguenti informazioni.

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

A questo punto, è necessario aggiungere il valore desiderato alla proprietà BlockedRecipients dell'oggetto memorizzato nella variabile $Example. Tenere presente che questo passaggio aggiunge il valore solo all'oggetto memorizzato nella variabile. Per aggiungere chris@contoso.com alla proprietà BlockedRecipients dell'oggetto archiviato nella variabile $Example, eseguire il comando riportato di seguito.

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

Se si esegue nuovamente il comando $Example | Format-List BlockedRecipients, vengono restituite le seguenti informazioni.

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

È evidente che l'indirizzo SMTP chris@contoso.com è stato aggiunto all'elenco di valori archiviati nella proprietà BlockedRecipients.

Infine, è necessario salvare l'oggetto memorizzato in $Example utilizzando il comando riportato di seguito.

Set-RecipientFilterConfig -BlockedRecipients $Example.BlockedRecipients

Ora, quando si esegue il comando Get-RecipientFilterConfig | Format-List BlockedRecipients, l'indirizzo SMTP chris@contoso.com risulterà aggiunto al server.

Aggiunta di più valori a una proprietà multivalore

Se si desidera aggiungere contemporaneamente più valori a una proprietà multivalore, eseguire lo stesso passaggio descritto in precedenza. Quando si specificano i valori da aggiungere, è necessario separarli utilizzando le virgole, come nel seguente esempio.

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

Dopo aver specificato i valori che si desidera aggiungere, utilizzare il cmdlet Set-RecipientFilterConfig per salvare l'oggetto.

Nota

Alcuni cmdlet non consentono di aggiungere contemporaneamente più valori.

Rimozione di un valore da una proprietà multivalore

È possibile rimuovere un unico valore da una proprietà multivalore anziché tutti i valori contemporaneamente. La procedura per la rimozione di un valore da una proprietà multivalore è simile alla procedura che consente di aggiungere un valore. Tuttavia, in questo caso è possibile rimuovere un unico valore alla volta. Si supponga nuovamente che la proprietà BlockedRecipients contenga i valori elencati nella prima sezione di questo argomento.

In primo luogo, è necessario assegnare a una variabile l'oggetto che si desidera modificare, come nel seguente esempio.

$Example = Get-RecipientFilterConfig

Quindi, eseguire il comando riportato di seguito, che specifica il valore esatto che si desidera rimuovere.

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

Infine, salvare l'oggetto archiviato nella variabile nel seguente modo.

Set-RecipientFilterConfig -BlockedRecipients $Example.BlockedRecipients

Esempi di aggiunta di valori a proprietà multivalore

Le seguenti procedure relative a Shell costituiscono esempi di come aggiungere valori ad alcune delle proprietà multivalore disponibili in diversi oggetti di Microsoft Exchange Server 2010 e di come visualizzare i risultati aggiornati.

Con questo esempio viene aggiunto un indirizzo SMTP alla cassetta postale Kim Akers.

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

Con questo esempio è possibile recuperare il nome e gli indirizzi di posta elettronica per la cassetta postale aggiornata Kim Akers.

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

Con questo esempio vengono aggiunti ulteriori codici di notifica sullo stato del recapito (DSN) nella proprietà GenerateCopyOfDSNFor.

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

Con questo esempio vengono recuperati i codici DSN, compresi i codici aggiunti.

Get-TransportConfig | Format-List GenerateCopyOfDSNFor

Esempi di rimozione di valori da proprietà multivalore

Le seguenti procedure costituiscono esempi di come rimuovere valori da alcune delle proprietà multivalore disponibili in diversi oggetti di Exchange 2010 e di come visualizzare i risultati aggiornati.

Con questo esempio viene rimosso l'ID dispositivo di un dispositivo Microsoft Exchange ActiveSync abilitato da una cassetta postale del server Accesso client.

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

Con questo esempio viene recuperato l'elenco aggiornato degli ID dispositivo.

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

Con questo esempio viene rimossa una cassetta postale dall'elenco di cassette postali con autorizzazioni di "invio per conto di" nel gruppo di distribuzione Sales Group.

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

Con questo esempio recuperato l'elenco aggiornato delle cassette postali con autorizzazioni di "invio per conto di" nel gruppo di distribuzione Sales Group.

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