Exchange: Deaktivierte User aus der Global Address List (GAL) ausblenden

mx_microsoft_borderVerlässt ein Benutzer das Unternehmen, so wird oft das Exchange-Mailkonto gelöscht und der Benutzeraccount gesperrt.

Dadurch kann der ehemalige Benutzer zwar nicht mehr auf Firmendaten zugreifen, in der Global Address List (GAL) wird er dennoch für interne Mitarbeiter angezeigt. Er kann weiterhin im Adressbuch ausgewählt werden und ist im Teamkalender sichtbar.

Das liegt daran, dass der Account noch vorhanden ist und das Attribut msExchHideFromAddressLists keinen Wert enthält.
Wird das Attribut auf TRUE gesetzt, wird der Benutzer weder in der Global Address List noch in Kalendergruppen angezeigt.

Um die Arbeit mit deaktivierten Usern zu vereinfachen, eignen sich die hier beschriebenen PowerShell CMDlets.

Zu jeder Zeit die Übersicht behalten

Welche deaktivierten User tauchen noch im Adressbuch auf?

Um herauszufinden, welche User deaktiviert wurden, aber noch im GAL erscheinen, kann man das folgende CMDlet verwenden:

Get-ADUser `
 -Filter {(enabled -eq "false") -and (msExchHideFromAddressLists -notlike "*")} `
 -SearchBase "OU=<OrganisationalUnit>,DC=<Domain>,DC=<TLD>"`
 -Properties enabled,msExchHideFromAddressLists

Welche deaktivierten User werden nicht mehr angezeigt?

Will man alle deaktivierten User herausfinden, bei denen das Attribut schon verändert wurde – die also nicht mehr im GAL auftauchen – ist dieser Befehl hilfreich:

Get-ADUser `
 -Filter {(enabled -eq "false") -and (msExchHideFromAddressLists -like "*")} `
 -SearchBase "OU=<OrganisationalUnit>,DC=<Domain>,DC=<TLD>"`
 -Properties enabled,msExchHideFromAddressLists

Einzelne User aus dem Adressbuch ausblenden

Einen einzelnen User, dessen Usernamen man kennt, kann man mit diesem Befehl ausblenden:

Set-ADUser <Username> -Add @{msExchHideFromAddressLists="TRUE"}

Das kann zum Beispiel hilfreich sein, wenn man ein Script erstellt hat, um ehemalige User zu deaktivieren. Den Usernamen kann man in diesem Fall auch in einer Variablen übergeben.

Deaktivierte Benutzer automatisiert ausblenden

Um diese Tätigkeit zu erleichtern, kann man eine geplante Aufgabe (scheduled Task) erstellen. Hierbei werden alle deaktivierten Benutzer, die noch im GAL angezeigt werden, herausgesucht und anschließend wird das msExchHideFromAddressLists Attribut auf TRUE gesetzt.

Get-ADUser `
 -Filter {(enabled -eq "false") -and (msExchHideFromAddressLists -notlike "*")} `
 -SearchBase "OU=<OrganisationalUnit>,DC=<Domain>,DC=<TLD>"`
 -Properties msExchHideFromAddressLists | `
 Set-ADUser -Add @{msExchHideFromAddressLists="TRUE"}

-xyra
http://miriamxyra.com – Miriam Wiesner

Advertisement

One comment

  1. Hallo Miriam,
    vielen Dank für diese perfekte Lösung. Danach habe ich schon lange gesucht.
    Wie aufwändig wäre es das tägliche Script zu ergänzen, so dass reaktivierte User auch wieder in der GAL angezeigt werden?

    Viele Grüße

    Like

Comments are closed.