Get-ADUser Ez az egyik fő PowerShell-parancsmag, amellyel különféle információkat szerezhet az Active Directory felhasználókról és attribútumaikról. A Get-ADUser parancsmag segítségével megkaphatja az AD felhasználói fiókok bármely attribútumának értékét, megjelenítheti a tartomány felhasználói listáját a szükséges attribútumokkal, és exportálhatja őket a CSV-be, és különféle kritériumok alapján választhatja ki a domain felhasználókat.
A Get-ADUser parancsmag a PowerShell 2.0 óta érhető el, és része a speciális Active Directory modulnak, a Windows PowerShell Active Directory moduljának (a Windows Server 2008 R2-ben bevezetett). Az RSAT-AD-PowerShell-parancsmagokkal különféle műveleteket hajthat végre az AD könyvtári objektumokon.
megjegyzés. Korábban különféle eszközöket kellett felhasználnom az AD felhasználói fiók attribútumokkal kapcsolatos információk beszerzéséhez: ADUC konzol (beleértve a mentett AD kéréseket is), vbs szkriptek, dsquery segédprogram stb. Ezek az eszközök könnyen helyettesíthetik a Get-ADUser parancsmagot..Ebben a példában bemutatjuk, hogyan lehet használni a PowerShell Get-ADUser parancsmagot, hogy információkat kapjon a felhasználói jelszó legutóbbi megváltoztatásának idejéről, a jelszó lejárásáról és az egyéb felhasználói adatokról..
Tartalom:
- Hogyan lehet felhasználót találni az AD-ben és megjeleníteni annak tulajdonságait a Get-ADUser használatával?
- Felhasználók lekérése több OU-ból a Get-ADUser használatával
- Kérjen felhasználói e-mail címeket az AD-től
- Get-ADUser: a tartomány felhasználói exportálása szöveges vagy CSV / Excel fájlba
- Get-ADUser -Filter: Az AD felhasználók listájának rendezése és szűrése
- Get-ADUser: Különböző használati példák
Hogyan lehet felhasználót találni az AD-ben és megjeleníteni annak tulajdonságait a Get-ADUser használatával?
Az RSAT-AD-PowerShell modul használatához el kell indítania a PowerShell konzolt rendszergazdai jogokkal, és a modult az alábbi paranccsal kell importálnia:
Import-Modul aktív könyvtár
A Windows Server 2012 és újabb verziókban az RSAT-AD-PowerShell modul alapértelmezés szerint telepítve van, amikor az Active Directory tartományi szolgáltatások (AD DS) szerepet telepítik a kiszolgálóra. A modul telepítéséhez egy domain tag kiszolgálóra futtassa a következő parancsot:
Telepítés-WindowsFeature -Név "RSAT-AD-PowerShell" -IncludeAllSubFeature
A Windows asztali verziójában (például Windows 10 esetén) a Get-AdUser parancs működéséhez telepítenie kell az RSAT megfelelő verzióját, és engedélyeznie kell az összetevőt a Vezérlőpulton Active Directory modul a Windows PowerShell számára (Távoli kiszolgálófelügyeleti eszközök -> Szerepkezelő eszközök -> AD DS és AD LDS eszközök -> AD DS eszközök).
Az AD modult telepítheti a PowerShellből:
Add-WindowsCapability -online -Név “Rsat.ActiveDirectory.DS-LDS.Tools ~~~~ 0.0.1.0”
Importmodul "C: \ PS \ ADPoSh \ Microsoft.ActiveDirectory.Management.dll"
Importmodul "C: \ PS \ ADPoSh \ Microsoft.ActiveDirectory.Management.resources.dll"
A Get-ADUser parancsmag összes argumentumának teljes listája a következőképpen szerezhető be:
segítséget kap a Get-ADUser
Az összes domain fiók felsorolásához futtassa a következő parancsot:
Get-ADUser-szűrő *
Alapértelmezés szerint a Get-ADUser parancsmag csak 10 alapvető attribútumot ad vissza (több mint 120 felhasználói fióktulajdonságból): DistinguishedName, SamAccountName, Név, SID, UserPrincipalName, ObjectClass, fiók állapota (Engedélyezve: True / False a UserAccountControl attribútum szerint) és t .D.
A parancsmag kimenete nem tartalmaz információkat az utolsó felhasználói jelszó megváltoztatásának idejéről.
Egy kérés végrehajtására egy adott tartományvezérlőn a - Server paraméter kerül felhasználásra:Get-ADUSer -Server DC01.winitpro.loc -Identity tstuser
A rendelkezésre álló tuser felhasználói attribútumokkal kapcsolatos teljes információ megjelenítéséhez futtassa a következő parancsot:
Get-ADUser -identity tuser - Tulajdonságok *
Get-ADUser Cmdlet paraméterrel Tulajdonságok * felsorolja az összes AD felhasználói attribútumot és azok értékeit.
Próbáljuk megváltoztatni a Get-ADUser parancs paramétereit, hogy csak a szükséges felhasználói attribútumok jelenjenek meg. Több felhasználói attribútumot egyszerre jeleníthet meg:
- PasswordExpired
- PasswordLastSet
- PasswordNeverExpires
- lastlogontimestamp
Futtassa a parancsot:
Get-ADUser tuser -tulajdonságok a PasswordExpired, PasswordLastSet, PasswordNeverExpires, lastlogontimestamp
Most a felhasználói információk információkat tartalmaznak a fiók állapotáról (Lejárt: Igaz / Hamis), a jelszó megváltoztatásának dátumáról és a domainbe történő utolsó bejegyzés időpontjáról (lastlogontimestamp). Az információkat kényelmesebb táblázatos formában mutatjuk be, és eltávolítunk minden felesleges attribútumot a Select-Object -Property vagy a Format-Table használatával:
Get-ADUser -szűrő * -tulajdonságok a PasswordExpired, PasswordLastSet, PasswordNeverExpires | ft Név, PasswordExpired, PasswordLastSet, PasswordNeverExpires
Felhasználók lekérése több OU-ból a Get-ADUser használatával
A felhasználók eltávolításához csak egy adott domain (OU) tárolóból használja ezt a lehetőséget searchbase:
Get-ADUser -SearchBase 'OU = Moszkva, DC = winitpro, DC = loc' -szűrő * -tulajdonságok PasswordExpired, PasswordLastSet, PasswordNeverExpires | ft Név, PasswordExpired, PasswordLastSet, PasswordNeverExpires
Ha egyszerre több felhasználó egységet kell kiválasztania, használja a következő felépítést:
$ OUs = "OU = Moszkva, DC = winitpro, DC = helyi", "OU = SPB, DC = winitpro, DC = loc"
$ OU | foreach Get-ADUser -SearchBase $ _ -Filter * | válassza a Név, Engedélyezve
Kérjen felhasználói e-mail címeket az AD-től
A felhasználói e-mail az Active Directory egyik attribútuma. A felhasználók e-mail címeinek felsorolásához hozzá kell adnia az EmailAddress mezőt a Get-ADUser parancsmag kiválasztott mezőihez..
Get-ADUser -szűrő * -tulajdonságok EmailAddress -SearchBase 'OU = MSK, DC = winitpro, DC = loc' | Kiválasztás-objektum neve, EmailAddress
Sorolja fel az aktív fiókokat a levelezési címekkel:
Get-ADUser -Filter (mail -ne "null") -and (Enabled -eq "true") -Tulajdonságok Vezetéknév, Keresztnév, mail | Select-Object név, vezetéknév, névnév, mail | Format-Table
Azon felhasználók listája, akiknek nincs e-mail címe:
Get-ADUser -Filter * -Tulajdonságok EmailAddress | ahol -Property EmailAddress -eq $ null
A következő példa lehetővé teszi a vállalati e-mail címek címjegyzékének csv fájl formájában történő letöltését, amelyet később importálhatunk az Outlookba vagy a Mozilla Thunderbirdbe:
Get-ADUser -Filter (mail -ne "null") -and (Enabled -eq "true") -Tulajdonságok Vezetéknév, Keresztnév, mail | Select-Object név, vezetéknév, névnév, mail | Export-Csv -NoTypeInformation -Kódolás utf8 -delimiter "," $ env: temp \ mail_list.csv
Get-ADUser: a tartomány felhasználói exportálása szöveges vagy CSV / Excel fájlba
Az eredményül kapott attribútumokkal rendelkező domain felhasználók listája szöveges fájlba tölthető fel:
Get-ADUser -szűrő * -tulajdonságok a PasswordExpired, PasswordLastSet, PasswordNeverExpires | ft Név, PasswordExpired, PasswordLastSet, PasswordNeverExpires> C: \ temp \ users.txt
Vagy feltöltheti az AD-felhasználókat egy CSV-fájlba, amelyet később kényelmesen exportálnak az Excelbe.
Get-ADUser -szűrő * -tulajdonságok a PasswordExpired, PasswordLastSet, PasswordNeverExpires | válassza a Név, a PasswordExpired, a PasswordLastSet, a PasswordNeverExpires | lehetőséget Export-csv -út c: \ temp \ felhasználói jelszó-lejár-2019.csv -Kiegészítés -Kódolás UTF8
Get-ADUser -Filter: Az AD felhasználók listájának rendezése és szűrése
Paraméter használata -szűrő A felhasználók listáját egy vagy több attribútum alapján szűrheti. Megadhatja az Active Directory-felhasználók bizonyos attribútumainak értékeit ehhez a paraméterhez. A -Filter paraméter használatakor a Get-ADUser parancsmag csak azokat a felhasználókat sorolja fel, akik megfelelnek a szűrési feltételeknek..
Például felsoroljuk azokat az Engedélyezett felhasználói fiókokat, amelyek neve „Dmitry"(az alábbi példa több szűrőt használ, a feltételeket kombinálhatja a szokásos PowerShell logikai összehasonlító operátorokkal):
Get-AdUser -Filter "(névszerû '* Dmitry *') -és (Engedélyezve -eq 'True')" -Tulajdonságok * | Név kiválasztása, engedélyezve
Opcionálisan használva sort-objektum A felhasználói listát egy adott attribútum szerint rendezheti. A parancsmag segítségével a felhasználók is letölthetők. ahol. Itt több szűrési feltételt is használhat egyszerre..
Get-ADUser -szűrő * -tulajdonságok a PasswordExpired, PasswordLastSet, PasswordNeverExpires -SearchBase 'OU = Moszkva, DC = winitpro, DC = loc' | ahol $ _. név -szerűen "* Dmitry *" -ja $ _. Engedélyezve -eq $ true | sort-object PasswordLastSet | Select-object név, PasswordExpired, PasswordLastSet, PasswordNeverExpires
Így összeállíthat egy táblát az Active Directory felhasználói szükséges attribútumaival.
Get-ADUser: Különböző használati példák
Ezután adjuk néhány hasznos lekérdezési lehetőség az Active Directory felhasználók számára különféle szűrőkkel. Kombinálhatja őket, hogy megkapja a szükséges domain felhasználók listáját:
Azon AD felhasználók felsorolása, akiknek a neve kezdődik római:
Get-ADUser -szűrő név-szerű "Roman *"
Az Active Directory összes fiókjának számításához:
Get-ADUser -Filter SamAccountName -like "*" | Measure-Object
Az összes aktív (nem blokkolt) számla az AD-ben:
Get-ADUser -Filter Engedélyezve -eq "True" | Select-Object SamAccountName, Név, Vezetéknév, Keresztnév | Format-Table
Nyomtassa ki a felhasználói fiók létrehozásának dátumát a domainben:
get-aduser -Filter * -Tulajdonságok neve, amikor létrehozva | Válassza ki a nevet, amikor létrehozva
Sorolja fel az összes felhasználót, aki az elmúlt 24 órában jött létre (példa innen):
$ lastday = ((Get-Date) .AddDays (-1))
Get-ADUser-szűrő (amikor létrehozva -ge $ tegnap)
A lejárt jelszóval rendelkező fiókok listája (a jelszó a domain házirendben van beállítva):
Get-ADUser -szűrő Engedélyezve -eq $ True -tulajdonos neve, jelszóExpired | ahol $ _. PasswordExpired | válassza a nevet, a passwordexpired
Feladat: A szöveges fájlban tárolt fiókok listájához (soronként egy fiók) meg kell szereznie a felhasználó telefonját az AD-ről, és feltöltenie az információkat egy szöveges csv fájlba (további jelentésgeneráláshoz az Excel programban).
Import-Csv c: \ ps \ usernsme_list.csv | ForEach
Get-ADUser -identity $ _. User -Properties Név, telefonszám |
Válassza a Név, telefonszám | lehetőséget
Exportálás-CSV c: \ ps \ export_ad_list.csv -Kiegészítés -Kódolás UTF8
Felhasználók, akik nem változtattak meg a jelszavukban az elmúlt 90 napban:
$ 90_Days = (Get-Date) .adddays (-90)
Get-ADUser -szűrő (passwordlastset -le $ 90_days)
Felhasználói fénykép beolvasása az Active Directoryból és jpg fájlba mentése:
$ user = Get-ADUser winadmin -Properties thumbnailPhoto
$ user.thumbnailPhoto | Set-Content winadmin.jpg -Kódolási bájt
Csoportok listája, amelyekben a felhasználói fiók található
Get-AdUser winadmin - Tulajdonosok | Válassza ki a tagja -a kibővített tulajdon tagját
Sorolja fel az OU azon felhasználóit, amelyek egy adott biztonsági csoport tagjai:
Get-ADUser -SearchBase 'OU = Moszkva, DC = winitpro, DC = loc' -Szűrő * -tulajdonos tagja | Hol-objektum ($ _. Tag-szerű „* WKS adminok *”)
Sorolja fel a tartományi számítógépeket, amelyekbe a felhasználó beléphet (korlátozás a LogonWorkstations attribútumon keresztül):
Get-ADUser AIvanov - Tulajdonságok a LogonWorkstations | Format-lista neve, LogonWorkstations