Lorsqu'on crée une liste de distribution, un contact ou même un utilisateur (mail-enabled ou mailbox-enabled), il se peut que l'on ne veuille pas qu'il apparaisse dans le carnet d'adresses Outlook (le carnet d'adresse en-ligne : la GAL ou Global Address List).
- Avant, sous Exchange 2000/2003, on avait la case "Hide from Address Book" dans les propriétés Exchange avancées de l'utilisateur avec la console Utilisateurs et Ordinateurs Active Directory (ADUC pour les intimes).
- Maintenant, sous Exchange 2007, on le fait via PowerShell ... compliqué ? non, simple !
--> TIP ! Penser à mettre à jour la GAL une fois l'utilisateur caché si on veut que l'effet soit immédiat (>Update-GlobalAddressList)
Voici les étapes pour cacher l'utilisateur Francis Drey de la forêt AD "domaine.com", dans l'OU "Utilisateurs" (pourquoi préciser la forêt et l'OU ? Parce que sous PowerShell, une boîte aux lettres s'identifie via le switch -Identity sous la forme domaine.com\OU\nom_utilisateur, dans notre cas ce sera domaine.com\Utilisateurs\Francis Drey)*
Note1 : il est facile de récupérer l'identifiant d'une boîte aux lettres avec la commande powershell get-mailbox partie_du_nom_de_l'utilisateur |fl Identity, exemple : get-mailbox *rancis* |fl Identity - le "|fl" pour "format list" sert à demander un affichage du résultat par ligne, on peut le remplacer par "|list", et même utiliser "|ft" pour "format table" ou même écrire "|table"
1/ Set-mailbox -Identity "domaine.com\Utilisateurs\Francis Drey" -HiddenFromAddressListsEnabled $true
Attention aux guillemets pour l'Identity
2/ Update-GlobalAddressList -Identity "Default Global Address List"
Note2 : de même, pour récupérer l'"identité" (la valeur du champ "Identity" ) de la GlobalAddressList que l'on souhaite mettre à jour, la commande Get-GlobalAddressList |fl Identity permet de l'afficher.
... et le tour est joué !
De même, pour cacher des listes de distribution on utilise la commande set-DistributionGroup -Identity identité_de_la_liste -HiddenFromAddressListsEnabled $true, et pour les contacts set-Contact -Identity identité_du_contact -HiddenFromAddressListsEnabled $true
@ bientôt pour d'autres posts agrémentés de schémas ! (je n'ai pas oublié la théorie des providers - c.f. post précédent - en cours d'élaboration ...)
Sam.