Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
I cmdlet in Exchange Management Shell e PowerShell per Exchange Onlinesupportano diversi tipi di filtri nei cmdlet correlati al destinatario:
- Filtri predefiniti.
- Filtri personalizzati con il parametro RecipientFilter .
- Filtri personalizzati con il parametro Filtro .
- Filtri personalizzati con il parametro ContentFilter .
Le versioni precedenti di Exchange usavano la sintassi del filtro LDAP per creare elenchi di indirizzi personalizzati, elenchi di indirizzi globali (GAL), criteri di indirizzi di posta elettronica e gruppi di distribuzione. La sintassi del filtro OPATH ha sostituito la sintassi del filtro LDAP a partire da Exchange Server 2007.
Filtri predefiniti
Un filtro predefinito utilizza le proprietà più diffuse in Exchange per filtrare i destinatari per gruppi di distribuzione dinamici, criteri di indirizzi di posta elettronica, elenchi di indirizzi o elenchi indirizzi globali. Con i filtri predefiniti, è possibile utilizzare PowerShell di Exchange o l'interfaccia di amministrazione di Exchange (EAC). Usando i filtri predefiniti, è possibile eseguire le operazioni seguenti:
- Determinare l'ambito dei destinatari.
- Aggiungere il filtro condizionale in base a proprietà comuni, ad esempio società, reparto e stato o area geografica.
- Aggiungere attributi personalizzati per i destinatari. Per ulteriori informazioni, vedere Attributi personalizzati.
I seguenti parametri sono considerati filtri predefiniti:
- IncludedRecipients
- ConditionalCompany
- ConditionalDepartment
- ConditionalStateOrProvince
- ConditionalCustomAttribute1 a ConditionalCustomAttribute15.
I filtri predefiniti sono disponibili nei cmdlet seguenti:
Esempio di filtro predefiniti
In questo esempio viene descritto l'utilizzo di filtri predefiniti in Exchange Management Shell per creare un gruppo di distribuzione dinamico. La sintassi riportata in questo esempio è simile ma non identica alla sintassi utilizzata per creare un criterio dell'indirizzo di posta elettronica, un elenco indirizzi o un elenco indirizzi globale (GAL). Durante la procedura di creazione di un filtro predefinito, è necessario rispondere alle seguenti domande:
Da quale unità organizzativa (OU) vuoi includere i destinatari (il parametro RecipientContainer )?
Nota
La selezione dell'unità organizzativa per questo scopo si applica solo alla creazione di gruppi di distribuzione dinamici e non alla creazione di criteri di indirizzi di posta elettronica, elenchi di indirizzi o elenchi indirizzi globali.
Quali tipi di destinatari si desidera includere (il parametro IncludedRecipients )?
Quali condizioni aggiuntive si desidera includere nel filtro, ovvero i parametri ConditionalCompany, ConditionalDepartment, ConditionalStateOrProvince e ConditionalCustomAttribute ?
In questo esempio viene creato un gruppo di distribuzione dinamico con le proprietà seguenti:
- Nome: Contoso Finance.
- Tipi di destinatari: cassette postali degli utenti.
- Posizione destinatario: UO denominata Contoso.com/Users.
- Filtri Includi solo i destinatari che hanno l'attributo Reparto definito come Finanza e l'attributo Società definito come Contoso.
New-DynamicDistributionGroup -Name "Contoso Finance" -OrganizationalUnit Contoso.com/Users -RecipientContainer Contoso.com/Users -IncludedRecipients MailboxUsers -ConditionalDepartment "Finance" -ConditionalCompany "Contoso"
In questo esempio vengono visualizzate le proprietà del nuovo gruppo di distribuzione dinamico.
Get-DynamicDistributionGroup -Identity "Contoso Finance" | Format-List Recipient*,Included*
Filtri personalizzati utilizzando il parametro RecipientFilter
Se i filtri predefiniti non soddisfano le proprie esigenze, è possibile creare filtri personalizzati usando il parametro RecipientFilter . Questo parametro è disponibile nei cmdlet seguenti:
Per ulteriori informazioni sulle proprietà filtrabili che è possibile utilizzare con il parametro RecipientFilter , vedere Proprietà filtrabili per il parametro RecipientFilter.
Esempio di filtro personalizzato
Nell'esempio seguente viene utilizzato il parametro RecipientFilter per creare un gruppo di distribuzione dinamico. La sintassi dei comandi utilizzata in questo esempio è simile, ma non identica, alla sintassi utilizzata per creare un criterio dell'indirizzo di posta elettronica, un elenco indirizzi o un elenco indirizzi globale.
In questo esempio vengono usati filtri personalizzati per creare un gruppo di distribuzione dinamico con le proprietà seguenti:
- Nome: AllContosoNorth.
- Tipi di destinatari: cassette postali degli utenti.
- Posizione destinatario: UO denominata Contoso.com/Users.
- Filtri Includi solo i destinatari che hanno l'attributo Company definito come Contoso e l'attributo Office definito come North Building.
New-DynamicDistributionGroup -Name AllContosoNorth -OrganizationalUnit contoso.com/Users -RecipientFilter "((RecipientTypeDetails -eq 'UserMailbox') -and (Company -eq 'Contoso') -and (Office -eq 'North Building'))"
Filtri personalizzati utilizzando il parametro Filter
Il parametro Filter consente di filtrare i risultati di un comando allo scopo di specificare gli oggetti da recuperare. Ad esempio, invece di recuperare tutti gli utenti o i gruppi, è possibile specificare un set di utenti o gruppi usando una stringa di filtro. Questo tipo di filtro non modifica alcuna configurazione o attributo degli oggetti. Modifica solo l'insieme di oggetti restituiti dal comando.
L'utilizzo del parametro Filter per modificare i risultati dei comandi è noto come filtro sul lato server. Il filtro sul lato server invia il comando e il filtro al server per l'elaborazione. Supportiamo anche il filtraggio lato client, in cui il comando recupera tutti gli oggetti dal server e quindi applica il filtro nella finestra della console locale. Per eseguire il filtro sul lato client, utilizzare il cmdlet Where-Object. Per ulteriori informazioni sui filtri sul lato server e sul lato client, vedere "Come filtrare i dati" in Working with Command Output.
Per individuare le proprietà filtrabili per i cmdlet con parametro Filter, eseguire il comando Get su un oggetto e formattare l'output canalizzando il parametro Format-List. La maggior parte dei valori restituiti è disponibile per l'uso nel parametro Filter .
Nell'esempio seguente viene restituito un elenco dettagliato per la cassetta postale Ayla.
Get-Mailbox -Identity Ayla | Format-List
Il parametro Filter è disponibile per i seguenti cmdlet dei destinatari:
- Get-CASMailbox
- Get-Contact
- Get-DistributionGroup
- Get-DynamicDistributionGroup
- Get-Group
- Get-Mailbox
- Get-MailContact
- Get-MailPublicFolder
- Get-MailUser
- Get-Recipient
- Get-RemoteMailbox
- Get-SecurityPrincipal
- Get-UMMailbox
- Get-User
- Get-UnifiedGroup
Per ulteriori informazioni sulle proprietà filtrabili che è possibile utilizzare con il parametro Filter , vedere Proprietà filtrabili per il parametro Filter.
Esempio di parametro del filtro
In questo esempio viene utilizzato il parametro Filter per restituire informazioni sugli utenti il cui titolo contiene la parola "manager".
Get-User -Filter "Title -like 'Manager*'"
Filtri personalizzati utilizzando il parametro ContentFilter
Il parametro ContentFilter consente di selezionare contenuto specifico nei messaggi e di esportarlo quando si utilizza il cmdlet New-MailboxExportRequest. Se il comando individua un messaggio che contiene una corrispondenza al filtro contenuto, il messaggio viene esportato in un file PST.
Esempio di parametro ContentFilter
In questo esempio viene creata una richiesta di esportazione che cerca nella cassetta postale di Ayla i messaggi il cui corpo contiene la frase "prospetto aziendale". Se la frase viene trovata, il comando esporta tutti i messaggi che contengono tale frase in un file PST.
New-MailboxExportRequest -Mailbox Ayla -ContentFilter "Body -like 'company prospectus*'"
Per ulteriori informazioni sulle proprietà filtrabili che è possibile utilizzare con il parametro ContentFilter , vedere Proprietà filtrabili per il parametro ContentFilter.
Ulteriori informazioni sulla sintassi OPATH
Quando si creano filtri OPATH personalizzati, tenere presenti gli elementi seguenti:
Usare la sintassi seguente per identificare i tipi di valori da cercare:
Valori di testo: racchiudere il testo tra virgolette singole (ad esempio,
'Value'o'Value with spaces'). In alternativa, è possibile racchiudere un valore di testo tra virgolette doppie, ma questo limita i caratteri che possono essere utilizzati per racchiudere l'intero filtro OPATH.Variabili: racchiudere le variabili che devono essere espanse tra virgolette singole (ad esempio,
'$User'). Se il valore della variabile contiene virgolette singole, è necessario identificare (eseguire l'escape) delle virgolette singole per espandere la variabile correttamente. Ad esempio, al posto di'$User', usare'$($User -Replace "'","''")'.Valori interi: non è necessario racchiudere numeri interi (ad esempio,
500). È spesso possibile racchiudere numeri interi tra virgolette singole o doppie, ma questo limita i caratteri che possono essere utilizzati per racchiudere l'intero filtro OPATH.Valori di sistema: non racchiudere valori di sistema (ad esempio,
$true,$false, o$null). Per racchiudere l'intero filtro OPATH tra virgolette doppie, è necessario eseguire l'escape del simbolo di dollaro nel valore di sistema (ad esempio,`$true).
È necessario racchiudere l'intero filtro OPATH tra virgolette doppie " " o virgolette singole ' '. Anche se qualsiasi oggetto filtro OPATH è tecnicamente una stringa e non un blocco di script, è comunque possibile usare le parentesi graffe { }, ma solo se il filtro non contiene variabili che richiedono l'espansione. I caratteri che è possibile usare per racchiudere l'intero filtro OPATH dipendono dai tipi di valori che si stanno cercando e dai caratteri usati (o non usati) per racchiudere tali valori:
Valori di testo: Dipende da come hai racchiuso il testo da cercare:
- Testo racchiuso tra virgolette singole: racchiudere l'intero filtro OPATH tra virgolette doppie o parentesi graffe.
- Testo racchiuso tra virgolette doppie: racchiudere l'intero filtro OPATH tra parentesi graffe.
Variabili: racchiudere l'intero filtro OPATH tra virgolette doppie (ad esempio,
"Name -eq '$User'").Valori interi: per assicurarsi che funzionino in tutti i casi, racchiuderli in uno dei modi seguenti:
-
Numero intero racchiuso tra virgolette singole: racchiudere l'intero filtro OPATH tra virgolette doppie o parentesi graffe
"CountryCode -eq '840'". -
Numero intero racchiuso tra virgolette doppie: racchiudere l'intero filtro OPATH tra parentesi graffe (ad esempio
{CountryCode -eq "840"}).
-
Numero intero racchiuso tra virgolette singole: racchiudere l'intero filtro OPATH tra virgolette doppie o parentesi graffe
Valori di sistema: racchiudere l'intero filtro OPATH tra virgolette singole o parentesi graffe (ad esempio
'HiddenFromAddressListsEnabled -eq $true'). Se si esegue l'escape del valore di sistema del simbolo di dollaro, è anche possibile racchiudere l'intero filtro OPATH tra virgolette doppie,"HiddenFromAddressListsEnabled -eq `$true"ad esempio .
La compatibilità dei criteri di ricerca e i caratteri validi che è possibile utilizzare per racchiudere l'intero filtro OPATH sono riepilogati nella tabella seguente:
Valore di ricerca filtro OPATH
racchiuso in
Virgolette doppiefiltro OPATH
racchiuso in
Virgolette singoleFiltro OPATH racchiuso in
Parentesi graffe'Text'✔ ✔ "Text"✔ '$Variable'✔ 500✔ ✔ ✔ '500'✔ ✔ "500"✔ $true✔ ✔ `$true✔ ✔ ✔ Includere il trattino prima di tutti gli operatori logici o di confronto. Gli operatori più comuni includono:
-and-or-not-
-eq(uguale) -
-ne(diverso da uguale) -
-lt(inferiore a) -
-gt(maggiore di) -
-like(confronto tra stringhe) -
-notlike(confronto tra stringhe)
Molte proprietà filtrabili accettano caratteri jolly. Se si utilizza un carattere jolly, utilizzare l'operatore -like invece dell'operatore -eq. Usare l'operatore -like per trovare corrispondenze di pattern in tipi complessi (ad esempio stringhe). Usare l'operatore -eq per trovare una corrispondenza esatta.
Quando si usa l'operatore -like in PowerShell per Exchange Online, il carattere jolly è supportato solo come suffisso nella maggior parte dei parametri. Ad esempio,
"Department -like 'sales*'"è consentito, ma"Department -like '*sales'"non è consentito.Consiglio
Anche se un prefisso jolly funziona in un parametro di filtro in PowerShell di Exchange Online, non è consigliabile usarlo a causa di problemi di prestazioni ridotte.
Per ulteriori informazioni sugli operatori che è possibile utilizzare, vedi:
Documentazione filtro destinatario
La tabella seguente contiene collegamenti ad articoli che consentono di acquisire ulteriori informazioni sulle proprietà filtrabili che è possibile utilizzare con i comandi dei destinatari di Exchange.
| Articolo | Descrizione |
|---|---|
| Proprietà filtrabili per il parametro RecipientFilter nei cmdlet di Exchange | Ulteriori informazioni sulle proprietà filtrabili disponibili per il parametro RecipientFilter . |
| Proprietà filtrabili per il parametro Filter nei cmdlet di Exchange | Ulteriori informazioni sulle proprietà filtrabili disponibili per il parametro Filter . |
| Filtri nel modulo PowerShell di Exchange Online | Informazioni sulle considerazioni per i filtri nei nove cmdlet esclusivi Get-EXO* nel modulo PowerShell di Exchange Online. |