2011-11-01 8 views
7

Sto provando a scrivere script PowerShell che nasconde l'utente dalle liste di scambio.Comando PowerShell per nascondere l'utente dagli elenchi di indirizzi di scambio

sono stato in grado di trovare seguente comando: Set-Mailbox -Identity [user id here] -HiddenFromAddressListsEnabled $true

E non mi dà un messaggio di errore, e quando faccio funzionare l'ordine due volte, ottengo seguente avviso:

ATTENZIONE: Il comando è stato completato correttamente ma nessuna impostazione di "[id utente qui]" è stata modificata.

Che probabilmente significa che il comando ha effettivamente funzionato.

ma quando si passa a Exchange Management Console e si apre il profilo utente "hide user from exchange address lists" la casella di controllo è disattivata.

Quale potrebbe essere il motivo?

+0

Prova questi link e vedi se sono utili: - http://vnucleus.com/2011/07/hide-disabled-users-from-exchange-2007-gal-via-powershell/ - http: // forums .msexchange.org/m_1800498374/mpage_1/key_/tm.htm # 1800498374 –

risposta

0

È necessario passare uno dei valori validi Identity come DN, domain\user ecc. Al cmdlet Set-Mailbox. Attualmente non stai passando nulla.

+0

manojlds, ho inserito l'ID utente nei segni di disuguaglianza e non è stato visualizzato. In realtà questo non è il problema e l'ID valido è stato fornito. Ci scusiamo per questo –

1

È possibile utilizzare il seguente script, basta sostituire DOMAIN con il nome del dominio. Quando viene eseguito, ti chiederà un login utente, quindi nascondi l'account dell'utente dagli elenchi di indirizzi.

$name=Read-Host "Enter login name of user to hide" 
Set-Mailbox -Identity DOMAIN\$name -HiddenFromAddressListsEnabled $true 

Brian.

+1

Questo è esattamente quello che sto usando, e imposta il valore, tuttavia quando vado su Exchange Management Console e apro il profilo utente, la casella di controllo "nascondi utente dagli elenchi di indirizzi di scambio" è disattivata. –

0

Stavo ottenendo lo stesso errore, tuttavia l'ho risolto eseguendo prima $false e poi $true.

6

Io uso questo come un'operazione pianificata al giorno per nascondere gli utenti disabili nella dC dal Global Address List

$mailboxes = get-user | where {$_.UserAccountControl -like '*AccountDisabled*' -and $_.RecipientType -eq 'UserMailbox' } | get-mailbox | where {$_.HiddenFromAddressListsEnabled -eq $false} 

foreach ($mailbox in $mailboxes) { Set-Mailbox -HiddenFromAddressListsEnabled $true -Identity $mailbox } 
0

"ATTENZIONE: Il comando completato con successo, ma nessuna impostazione di '[ID utente qui]' sono stati modificata."

Questo avviso indica che l'impostazione era già impostata come si desidera. Quindi non ha cambiato nulla per quell'oggetto.

Problemi correlati