Egy ideje már közzétettem a kezdeti szkriptemet, hogy megtaláljam a szerverre bejelentkezett felhasználókat, és távolról kijelentkezzem őket. Ez több évvel ezelőtt volt, és úgy gondoltam, hogy még egyszer megpróbálom javítani a sebességet, javítani a formázást és hozzáadni néhány dedikált kapcsolót egy kicsit nagyobb rugalmassággal. Végül pedig meg akartam változtatni ezt a csúnya, szokatlan nevet valami Powershell által jóváhagyottra. Ezt az új funkciót Get Logged In Users (Bejelentkezett felhasználók lekérdezése) névre kereszteltem.

A mögöttes struktúra továbbra is a lekérdezési munkamenetet fogja használni, így ez nem változott. Ami változott, az az, hogy most már megadhatunk egy adott felhasználót, vagy megkereshetjük, hogy egy felhasználó hol van bejelentkezve egy tartományban. Egy másik megjegyzés az a képesség, hogy egy egyszerű kapcsolóval ki lehet őket jelenteni, így ez mindenképpen jól jöhet, ha a rendszerek naplóját ellenőrizzük.

Bejelentkezett felhasználók lekérdezése a Powershell segítségével

visszatekintve nem tudom, miért adtam hozzá az ActiveDirectory modult, és miért futtattam rendszergazdaként. Ez egyszerűen nem szükséges és nem is szükséges a funkció futtatásához. Viszont nagyon ajánlom, hogy Windows 10-es gépen vagy Server 2016 és újabb Powershell 5-tel futtasd, mert hát lássuk be, 2020-ban vagyunk.

Paraméterek

-ComputerName

Leírás: Ez adja meg a ComputerName-et, amelyet ellenőrizni szeretne. Ha nincs ComputerName megadva, akkor a helyi számítógépet fogja ellenőrizni.

-UserName

Description:

-LogOff

Description: Ha a logoff paraméter meg van adva, akkor kijelöli a felhasználót a számítógépről. Javasoljuk, hogy a logoff kapcsoló nélkül futtassa, hogy először megtekinthesse az eredményeket.

How To Run Get Logged In User Powershell Script

A szkript futtatásához néhány dolgot kell tennie. Mindenekelőtt be kell állítania a futtatási házirendjét RemoteSigned vagy bypass értékre. Ez minden Powershell szkript futtatásánál alapértelmezett.

Második lépésként dot source-olni kell a szkriptet, mivel ez egy függvény. A szkript dot source-olásához a következőket kell tennie:

  • Másolja ki a fenti szkriptet, és mentse el tetszőleges helyre. Ebben a példában a C:\_Scripts mappába mentem.
  • A Powershell ablakban írja be: . .\_Scripts\Get-LoggedInUser.ps1 – Figyelje meg a két pontot a backslash előtt.

Távoli számítógépeken bejelentkezett felhasználók lekérdezése

A legjobb dolog, amit szeretek ebben a szkriptben, az a képesség, hogy megtudja, ki van bejelentkezve egy távoli számítógépre. Ez enyhíti annak szükségességét, hogy fizikailag bejelentkezzen a számítógépre és így ellenőrizze. Mivel ez a Powershell szkript lehetővé teszi a távoli kiszolgálók és számítógépek lekérdezését, ezért rendkívül automatizálható és nagyon jól skálázható. Ezzel a szkripttel ellenőrizhet 1 kiszolgálót vagy 1000 kiszolgálót, és ugyanannyi erőfeszítést jelentene annak a személynek, aki a szkriptet futtatja. Ez fantasztikus, és imádom, hogy mindezt a saját Windows 10-es számítógépéről teheti meg.

Azt is nagyon könnyen megtudhatja, hogy egy felhasználó hol van bejelentkezve egy tartományban. Attól függően, hogy hány gépen fogsz iterálni, ez nyilvánvalóan eltarthat egy ideig, de meg lehet csinálni. Íme egy egyszerű kódrészlet arról, hogyan lehet megtudni, hogy hol van bejelentkezve egy felhasználó.

ErrorAction SilentlyContinue a kapcsolati hibák elnyomására és tiszta kimenet megjelenítésére szolgál

Íme, egy gyors és egyszerű megoldás egy olyan problémára, amellyel sok IT-adminisztrátor találkozott már rendszergazdai útja során. Tisztában vagyok vele, hogy ezt a csoportpolitikán keresztül is megteheti, ha ezt az utat szeretné választani, vagy megteheti valamilyen GUI eszközzel, de én mindig szeretem bepiszkolni a kezemet a Powershell-lel.

Articles

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.