Thursday, August 2nd, 2007...10:40 pm
ADSIEdit i członkostwo w grupach
Człowiek zawsze się czegoś nowego uczy - chociażby i o narzędziu tak starym jak ADSIEdit. Ostatnio przy rozmowie z klientem na temat LVR wyszedł temat konieczności odświeżenia członkostwa w grupach AD, tak aby możliwe było pełne wykorzystanie tego mechanizmu dla już istniejących grup. Administrator po stronie klienta, na moją sugestię użycia w tym celu ldifde.exe powiedział, że na szkoleniu PSS z AD disaster recovery mówiono mu o jakiejś operacji na atrybucie schematu, która powoduje ten sam efekt a nie wymaga ręcznych operacji eksportu i importu członkostwa w grupach.
Cóż … przyznam siÄ™ że wczeÅ›niej o tym nie sÅ‚yszaÅ‚em - nadal wiem że wielu rzeczy nie wiem. Szybko zasiÄ™gnÄ…Å‚em jÄ™zyka u starszego stażem i wiedzÄ… kolegi z polskiego MCS i uzyskaÅ‚em wskazówkÄ™ że pewnie chodzi o zachowanie ADSIEdit w takim przypadku.
Najłatwiej sprawdzić więc empirycznie. Otwieramy ADSIEDit.msc, szukamy obiektu grupy, prawy klik myszą, Properties. Odnajdujemy atrybut member i otwieramy jego zawartość. I tutaj ważna rzecz, bez żadnej zmiany zawartości zamykamy okno naciskając OK (nie Cancel). Zamykamy właściwości grupy. Wszystko jest w najlepszym porządku. Jeżeli jednak mamy włączone odpowiednie ustawienia inspekcji zdarzeń to po takiej operacji zauważymy w event log kilka zdarzeń:
Event Type: Success Audit
Description:
Security Enabled Global Group Changed:
Target Account Name: GrupaTestowa
———————————————————————–
Event Type: Success Audit
Event ID: 633
Security Enabled Global Group Member Removed:
Member Name: -
Member ID: W2K\user2
Target Account Name: GrupaTestowa
———————————————————————–
Event Type: Success Audit
Event ID: 633
Description:
Security Enabled Global Group Member Removed:
Member Name: -
Member ID: W2K\user1
Target Account Name: GrupaTestowa
———————————————————————–
Event Type: Success Audit
Event ID: 632
Description:
Security Enabled Global Group Member Added:
Member Name: CN=user2,OU=Employees,DC=w2k,DC=pl
———————————————————————–
Event Type: Success Audit
Event ID: 632
Description:
Security Enabled Global Group Member Added:
Member Name: CN=user,OU=Employees,DC=w2k,DC=pl
Czyli po wykonaniu tej operacji ADSIEdit usunęło wszystkich członków z grupy, a potem ponownie ich dodało. Efektywnie odświeżając członkostwo w grupach - i zagadka magicznej operacji na atrybucie ze szkolenia się wyjaśniła. W przypadku, gdy usuniemy tylko jednego członka z grupy to i tak zostaną usunięci wszyscy a następnie dodani tylko ci, którzy pozostają w grupie.
Wnioski: uważać na operacje przeprowadzane z użyciem ADSIEdit. W szczególności gdy dotyczy to większej grupy - po co generować niepotrzebny ruch związany z jej replikacją. Jeżeli już w jakimś celu użyjemy do podglądu członkostwa w takiej grupie ADSIEdit to należy użyć Cancel w celu zamknięcia okna.
ADSIEdit nigdy nie było moim ulubionym narzędziem, chociaż czasami się przydaje do szybkich operacji. Jak widać, przynajmniej w odniesieniu do zarządzania członkostwem w grupach używanie go nie jest najbardziej efektywne. Ja polecam linię poleceń i ADmod.

1 Comment
August 8th, 2007 at 7:00 pm
ADModify też jest wygodne, gdy chce siÄ™ wykonać kilka zmian, na wielu obiektach z różnych OU’s (ostatnio miaÅ‚em konieczność wielokrotnie).
Na marginesie - odwieczna ‘wojna’ miÄ™dzy narzÄ™dziami okienkowymi i command-line’owymi
Pozdrawiam
yacoob
Leave a Reply