AD gyötrések I.
By JoeP
MódosÃtani kellene felhasználói adatokat az Active Directoryban. Ez még nem nagy ügy, elÅ‘kapjuk az Active Directory Users & Computers snap-int és átÃrjuk, amit akarunk.
Csakhogy ez nem mindig elegendő. Illetve, van, amikor elegendő, de kényelmetlen. Azután van, amikor elegendő ugyan, de nem szeretnénk annyit dolgozni.
Szerencsére rengeteg segédprogram létezik erre a feladatra. Jelen cikkben a grafikus felülettel rendelkezők kerülnek bemutatásra, a következőben pedig a parancssorosak lépnek porondra.
1. ADModify.net
Nagyon hasznos kis program. Valamikor az Exchange csapat Ãrta saját használatára, de annyira jó lett, hogy felturbózták és most általános cÃmtármódosÃtó program lett belÅ‘le. Egyik elÅ‘nye, hogy nagy tételben (bulk) lehet segÃtségével a cÃmtár adatait módosÃtani. A másik, hogy bármely adat értékét módosÃthatjuk vele - feltéve, hogy megvannak hozzá a jogosultságaink.
Már rögtön az induló képernyőn felvillant valamit az erejéből:
- 1.1 Modify AttributesItt léphetünk be az adatmódosÃtó menübe. Persze nem egybÅ‘l, elÅ‘ször ki kell jelölnünk a módosÃtandó adatok körét. Ez lehet egy felhasználó, több felhasználó (lsd a képen), illetve extrém esetben a konfigurációs névtér egy eleme. Amikor több felhasználóról van szó, kijelölhetjük Å‘ket egyesével, de használhatunk saját magunk által összerakott LDAP lekérdezést is.
A lényeg, hogy a jobb oldali oszlopban legyen valamilyen objektum - ekkor mehetünk tovább.
A következÅ‘ képernyÅ‘n egy százfülű ablakot találunk, mely elsÅ‘ ránézésre meglehetÅ‘sen hasonlÃt az ADUC felhasználói adatokat módosÃtó ablakára. De csak elsÅ‘ ránézésre.
Az ördög ugye szokás szerint megint a részletekben…
Például nézzük meg alaposan a fenti ablakot. Látható, hogy az elÅ‘zÅ‘leg kijelölt felhasználói csokor számára egységesen tudunk új smtp cÃmet generálni, sÅ‘t, akár elsÅ‘dlegessé is tehetjük azt. Ha belegondolunk, hogy ugyanez Recipient Policy segÃtségével mennyire körülményes (LDAP szűrÅ‘, Recipient Update Service rugdosása…), akkor hamar megszerethetjük ezt a fület - pedig a legérdekesebb opcióról nem is beszéltem. Gondolom, nem árulok el újdonságot, ha megemlÃtem, hogy a Recipient Policy segÃtségével kiszórt emailcÃmek a policy törlése után nem törlÅ‘dnek maguktól. Annál azért jobban kapaszkodnak. EgyfelÅ‘l ezeket el lehet távolÃtani úgy, hogy felbérelünk tizenegy norvég hálóstoppoló öregasszonyt akik egyenként kitörlik a megfelelÅ‘ cÃmeket - másfelÅ‘l megcsinálhatjuk azt, hogy a megszűnt házirend LDAP-szűrÅ‘ ablakából kimásoljuk az LDAP feltételt, azzal berontunk az ADModify.net segédprogramba, majd miután lejött az érintett felhasználók listája, mindegyiket kijelöljük és a fenti képen látható ‘Remove email address’ opcióval eltávolÃtjuk a feleslegessé vált cÃmeket.
Végülis, Ãzlés kérdése.
(Megjegyzem, azért ez a lehetÅ‘ség nem helyettesÃti teljeskörűen a Recipient Policy-t - a felhasználók létrehozását, mozgatását kÃsérÅ‘ automatizmus hiányzik belÅ‘le.)Csemegézzünk még a fülek között. Van egy másik remek tab, úgy hÃvják, hogy custom. Amennyiben ismerjük a módosÃtandó tulajdonság nevét, akkor itt simán átÃrhatjuk az értékét.
Konkrét példa. Nagyon sok helyen létezik a felhasználóknak egy, a HR által generált azonosÃtója. A cÃmtárban létezik az employeeID nevű tulajdonság, direkt erre a feladatra felingerelve. Nagyon fontos egy tulajdonság lenne, hiszen ezáltal lenne összeköthetÅ‘ a HR adatbázis és az Active Directory. Mégse használja senki, mert az ADUC-ban nincs kivezetve a felületre az értéke. Amennyiben használják, akkor vagy megvásárolják a Hyena segédprogramot, vagy az adminnak kell összedobnia egy webfelületű szkriptet a tulajdonság kezelése céljából - vagy egy másik tulajdonságot oroznak el erre a célra.
Nos, az ADModify.net ebben is segÃt. Az alábbi képen éppen Farkas Berci munkahelyi azonosÃtókódját módosÃtom. (Sajnálatosan a probléma ettÅ‘l teljesen nem oldódik meg, a kód értékét kiolvasni ebbÅ‘l a programból sem tudjuk. Erre lesznek jók a késÅ‘bb bemutatott parancssoros segédprogramok.)
Itt kell megemlÃteni még egy lehetÅ‘séget. Amikor kijelöljük, kiknek az adatait akarjuk piszkálni, kiválaszthatjuk a konfigurációs névteret is, illetve ezen belül tetszÅ‘leges objektumot. Az más kérdés, hogy elég furán fog kinézni utána a felhasználói adatok módosÃtására kitalált képernyÅ‘ - mondjuk egy Exchange Store objektumnál. De még Ãgy sem értelmetlen a módszer, ugyanis a custom fül alatt módosÃthatunk olyan tulajdonságot, amely ennél a - nem egészen idevaló - objektumnál található. (Szvsz. ez persze igazából csak agytorna, az ilyen tulajdonságok kezelésére ezerszer jobb segédprogram az ADSIEdit.)
- 1.2 Undo ChangesMinden módosÃtásról log készül xml formátumban, tehát simán vissza is tudjuk vonni az eddigieket.
Magát a logot az alábbi ábra mutatja, az alatta lévő pedig a visszatöltő ablakot.
Nem egy pilótavizsgás funkció, de roppant hasznos.

- 1.3 Import Mailbox rightsExchange postafiókok jogosultságait importálhatjuk be xml fájlból.
Maga a fájl az elsÅ‘ menüpontban állÃtható elÅ‘, mint az ábrán is látható.
MielÅ‘tt továbbrohannánk, idÅ‘zzünk el egy kicsit az ablaknál. Ugye mindenkinek feltűnt, hogy a program segÃtségével felhasználók egy tetszÅ‘leges csoportjánál tehetünk rá valakit megfelelÅ‘ jogosultággal az illetÅ‘k postafiókjára, illetve pont fordÃtva, vehetünk el jogosultságokat a postafiókoktól?
Ha igen, akkor tényleg mehetünk tovább.
A jogosultság export után egy xml fájl keletkezik.Szép. És ami fájl, az természetesen módosÃtható is. Más kérdés, hogy értelme nem sok van - jogosultság visszatöltést célszerűen backup/restore céllal érdemes használni, ugyanis jelen menüpontban nincs undo. Ha módosÃtani akarunk, akkor használjuk csak a korábbi ‘Mailbox Rights’ fület.
És akkor a visszatöltés nem túl szofisztikált ablaka:

Itt azt kell észrevenni, hogy a jogosultságok lehetnek additÃvak, illetve agyonvágóak.
A programcsomaggal nemcsak GUI jön, létezik a program parancssoros változatban is. A szintaxist és a kapcsolókat most nem elemzgetném, az ‘admodcmd -? > admodcmdhlp.txt’ parancsot ajánlom mindenki szÃves figyelmébe, illetve a keletkezÅ‘ fájl kinyomtatását. Nagyon sok oldal lesz, de ebbÅ‘l lehet majd kibogarászgatni, hogy bármit, amit a grafikus felületen meg lehetett csinálni, hogyan lehet parancssorból is véghezvinni. Példák természetesen vannak.
Az Ãrás végére még néhány link:
- A program otthona a gotdotnet-en
- Egy cikk a programról az Exchange blogban
2. GALMod
A program becsületes neve: Global Address List Modify tool.
Nem egy mai gyerekrÅ‘l van szó, anno az Exchange5.5-höz készült - ennek ellenére remekül elboldogul az újabb Exchange verziókkal is, hiszen a szerverek szó nélkül tovább passzolják a cÃmtárnak a módosÃtási igényeket. A program elÅ‘ször az Exchange 5.5 Resource Kit-nek volt része, majd rákerült a késÅ‘bbi verziókhoz tartozó RK cédékre is.
A használata egyszerű, mint a faék. ElsÅ‘ induláskor legyárt egy MAPI profilt (ha addig nem volt), majd feljön egy háromfülű ablak, amelyikben a profilhoz tartozó postafiók azon adatait lehet módosÃtani, melyek a cÃmlistákban is megjelennek.

2.1 MAPI profil kiválasztása
Hogy annyira azért ne legyen egyszerű az élet, szerveroldalon Windows2003 szerver kell hozzá, futó ASP.NET szolgáltatással. (A régebbi verziók esetén szükség lesz egy kis hegesztésre is, ezekről részletesen itt vagy itt lehet olvasni.)
A képeken látható, hogy bizonyos mezÅ‘k szürkék - ezek nem módosÃthatók. A többi viszont igen.
Link szekció:
- Jim McBee Ãrása a programról
3. Directory Update
Jim McBee egyébként is egy jónevű fickó. Directory MVP, aki egész érdekes Ãrásokat szokott publikálni a blogján. Régebben használta néha a GALMOD programot és érzékelte annak hiányosságait. Szerencsére nem csak érzékelte, hanem Ãrt is egy másikat, melyet Directory Update-nek nevezett. (Nem, nem Norbi.)
Miben is különbözik ez a GALMOD-tól?
Sok mindenben:
- Semmit nem kell kliensoldalon telepÃteni.
- Egyenként lehet szabályozni, hogy a GAL-ban szereplÅ‘ tulajdonságok közül melyek látszódjanak és ezek közül melyek legyenek módosÃthatók.
- BÅ‘vebb a módosÃtható tulajdonságok köre.
- Minden tulajdonsághoz szabadon konfigurálható drop-down lista rendelhető.
- A képernyő testreszabható.
- A kommunikáció egyszerűen titkosÃtható.
Ennyi plusz funkció láttán Jim úgy döntött, hogy ez nem ingyenes program lesz, inkább megpróbálja eladni azt. Jelenleg 250$/domain áron forgalmazza. Nem kevés… de ha belegondolunk, hogy mivel a felhasználók saját böngészÅ‘jükbÅ‘l képesek módosÃtani az adataikat, Ãgy az eredmény egy mindig aktuális cÃmtár lesz, … lehet, hogy mégis megéri. (Természetesen ahol szigorú elÅ‘Ãrások, ISOxxxx és change management szabályozza a változtatásokat, ott a program számára nem sok babér terem. De kisebb/közepes cégeknél el lehet rajta gondolkodni.)
A webről 10 napos próbaverziót lehet letölteni.
Pár szó a működésről.
Ahhoz, hogy egyáltalán telepÃteni lehessen, egy Windows2003 DC vagy member szerverre lesz szükség, melyen fut az IIS és az ASP.NET szolgáltatás. Maga a telepÃtés nem különösebben bonyolult, majdhogynem next-next-finish. A végén létrejön egy DirectoryUpdate virtuális könyvtár. Opcionálisan erre lehet rávarázsolni az SSL elérést.
ElsÅ‘ lépésben a szerveroldal kész is. Kliens oldalon be kell Ãrni a böngészÅ‘be, hogy ‘http://webszerver/DirectoryUpdate/default.aspx’ - és máris Bob a bácsikánk.

A sikeres bejelentkezés után kapjuk meg az adatmódosÃtó ablakot.
Már ez sem rossz, de testreszabás nélkül ez az ablak egy félkarú óriás. (Gyönyörű:)
A virtuális könyvtár alatt találni fogunk két xml és egy css fájlt. Ezeken keresztül lehet majd az alkalmazást konfigurálgatni. A css fájl értelemszerűen a kinézet - betűk, szÃnek - állÃtgatására jó, az xml fájlok közül az egyik az alapbeállÃtások biztonsági tartaléka. A másik, az appsettings.xml tartalmazza a program működését befolyásoló paramétereket. A felépÃtése értelmes, logikus, nem hiszem, hogy túlságosan el kellene mélyülnöm a magyarázatában.
Minden értékhez tartozik egy type, egy editable és egy visible változó. Az utóbbi kettÅ‘ yes/no értékkel bÃrhat, a type pedig lehet text v. dropdown. Ezekkel lehet beállÃtani, hogy egy tulajdonság egyáltalán látható legyen-e, ha igen, akkor az értéke szerkeszthetÅ‘ legyen-e és ha igen, akkor szabadon lehessen módosÃtani vagy csak egy legördülÅ‘ listáról. Magukat a listaelemeket value tag-ek közé kell beÃrni.
Először töltsük fel a listaelemeket.
Majd tiltsuk le az IP telefon értékének a módosÃtását.
És itt is a kÃvánt végeredmény.
Végül a link szekció:
- Jim Ãrása a programról
- A program hivatalos oldala
4. ADSIEdit, LDP
Segédprogramok nem csak lelkes emberek műhelyeiben teremnek, akadnak az operációs rendszerben is rendesen. A Windows server telepÃtÅ‘ cédé Support Tools csomagjában (telepÃteni kötelezÅ‘!) található többek között a cÃmsorban található két segédprogram. MindkettÅ‘ grafikus felületű - és mindkettÅ‘rÅ‘l elmondható, hogy mindent, hangsúlyozom, mindent módosÃthatunk segÃtségükkel a cÃmtárban. (Feltéve, hogy van hozzá jogosultságunk.) Emiatt kéretik igen óvatosan bánni velük.
Az ADSIEdit egy MMC snap-in, célszerű felvenni a mindennapos custom MMC konzolunkra.
A használata igen egyszerű. (A W2K és a W2K3 alatti verziók eltérnek egy cseppet, de nem vészesen. A cikkben a W2K3 verziót használtam.)
Kikeressük a megfelelÅ‘ tulajdonságot (ehhez persze ismerni kell az AD névtereit és azokon belül a struktúrákat), majd nemes egyszerűséggel átÃrjuk azt. A lenti példában például törlöm Farkas Berci egyik emailcÃmét.
Az LDP programnak kicsit más a filozófiája. ElsÅ‘sorban gyors nézegetéshez ajánlott, a tulajdonság értékek átÃrása kicsit körülményes benne. Nagy elÅ‘ny, hogy az egyes objektumokra kattintva csak az értékkel rendelkezÅ‘ tulajdonságokat listázza ki, Ãgy gyorsan áttekinthetjük egy objektum összes létezÅ‘ értékét. (Tudjuk ugye, hogy ha egy tulajdonságnak nincs értéke, akkor az nem létezik.)
A lenti képernyőkép szerintem magáért beszél.
Ahhoz, hogy idáig eljussunk, három lépést kell megtennünk.
- Connection/Connect
- Connection/Bind
- View/Tree
Értéket módosÃtani pedig az alábbi módon lehet.
Link szekció:
By JoeP
szeptember 4, 2006 at 19:09
Posted in: active directory

















Leave a Reply