A Get-ADUser használatával különféle információkat szerezhet az AD tartományi felhasználókról

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”

Az RSAT-AD-PowerShell modult a számítógépre történő telepítés nélkül is használhatja. Csak másolja a fő fájlokat, és importálja a modult egy PoSh munkamenetbe:

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

A Get-ADUser parancsmag használatához nem kell fiókot használni a tartományi rendszergazdai jogokkal. Bármelyik felhatalmazott AD tartományi felhasználó futtathatja a PowerShell parancsokat az AD objektumok legtöbb attribútumának értékének lekérdezéséhez (kivéve a védett objektumokat, lásd az LAPS példát). Ha a Get-ADUser parancsot egy másik fiókból kell futtatnia, akkor használja a hitelesítő adat paramétert.

Az összes domain fiók felsorolásához futtassa a következő parancsot:

Get-ADUser-szűrő *

Fontos. Nem ajánlott ezt a parancsot nagyszámú fiókkal rendelkező AD tartományokban futtatni, például esetleg túlterhelheti az adatokat szolgáltató tartományvezérlőt.

A felhasználói attribútumok megváltoztatásához használja a Set-ADUser parancsmagot.

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

A Get-AdUser és az Add-ADGroupMember parancsmagokkal dinamikus AD felhasználói csoportokat hozhat létre (várostól, pozíciótól vagy osztálytól függően).

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

tanács. Az Active Directory számítógépekkel kapcsolatos információk beszerzéséhez használja a Get-ADComputer parancsmagot.