2011-11-01 40 views
7

Estoy tratando de escribir script de powershell que oculta el usuario de las listas de intercambio.comando Powershell para ocultar el usuario de las listas de direcciones de intercambio

que fue capaz de encontrar siguiente comando: Set-Mailbox -Identity [user id here] -HiddenFromAddressListsEnabled $true

Y no me da un mensaje de error, y cuando funciono con el comando dos veces, me sale advertencia siguiente:

ADVERTENCIA: El comando se completó con éxito, pero no se modificó la configuración de '[ID de usuario aquí]'.

Lo que probablemente significa que el comando realmente funcionó.

pero cuando voy a Consola de administración de Exchange, y el perfil de usuario abierta, casilla de verificación "hide user from exchange address lists" está apagado.

¿Cuál podría ser el motivo?

+0

Pruebe estos enlaces y ver si son útiles: - http://vnucleus.com/2011/07/hide-disabled-users-from-exchange-2007-gal-via-powershell/ - http: // foros .msexchange.org/m_1800498374/mpage_1/key_/tm.htm # 1800498374 –

Respuesta

0

Usted tendrá que pasar una de las Identity valores válidos como DN, etc domain\user a la Set-Mailbox cmdlet. Actualmente no estás pasando nada.

+0

manojlds, puse la identificación de usuario en signos de desigualdad y no se mostró. En realidad, este no es el problema, y ​​se proporcionó una identificación válida. Lo siento por eso –

1

Puede utilizar la siguiente secuencia de comandos, simplemente reemplace DOMAIN con el nombre de su dominio. Cuando se ejecute, le solicitará un registro de usuario y luego ocultará la cuenta de ese usuario de las listas de direcciones.

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

Brian.

+1

Esto es exactamente lo que estoy usando, y establece el valor, sin embargo, cuando voy a la Consola de administración de Exchange y abro el perfil de usuario, la casilla de verificación "Ocultar usuario de listas de direcciones de intercambio" está desactivada. –

0

que estaba recibiendo el mismo error exacto, sin embargo, me lo resolvió mediante la ejecución de $false primero y luego $true.

6

Puedo usar esto como una tarea programada diaria para ocultar los usuarios con discapacidad en el año de la lista global de direcciones

$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

"ADVERTENCIA: El comando se ha completado con éxito, pero no hay ningún ajuste de '[id de usuario aquí]' han sido modificado."

Esta advertencia significa que la configuración ya se configuró como la que usted desea. Entonces no cambió nada para ese objeto.

Cuestiones relacionadas