Weboldal keresés

Hogyan kell használni a Get-MgUser-t a Microsoft Graph PowerShellben?


A Microsoft Graph PowerShell Get-MgUser parancsát kifejezetten az Azure Active Directoryban (Microsoft Entra) tárolt Microsoft 365-bérlő felhasználóira vonatkozó információk lekérésére tervezték. A felhasználók kezelése az Azure AD-ben kulcsfontosságú feladat a rendszergazdák számára. Tehát a Get-MgUser parancsmag megértése elengedhetetlen a felhasználói adatok Microsoft Graphon belüli PowerShell segítségével történő kezeléséhez. Ez a parancs segít a felhasználói tulajdonságok és kapcsolatok hatékony lekérésében, különféle paraméterekkel, például filter, property és search segítségével az adatok visszakeresésének finomhangolásához. folyamatokat. Ebben az átfogó cikkben végigvezetem Önt a Get-MgUser használatával az Azure AD-felhasználói információk lekéréséhez, az alapvetőtől a haladó használatig, és tippeket adok.

A Get-MgUser parancs értelmezése

A Get-MgUser világába vezető utazás megkezdéséhez először ismerjük meg, mit csinál ez a parancs. A Get-MgUser egy PowerShell-parancsmag, amely lehetővé teszi a felhasználók adatainak lekérését a Microsoft 365-ben. Akár konkrét felhasználói tulajdonságokat kell megkeresnie, akár bizonyos kritériumok alapján kell szűrnie a felhasználókat, akár licenceket kell lekérnie, a Get-MgUser mindent megtesz.

A Get-MgUser használatának megkezdéséhez csatlakoznia kell a Microsoft 365 környezethez a PowerShellről a Microsoft Graphon keresztül, a megfelelő hitelesítő adatok használatával. Csatlakozás után futtathatja a Get-MgUser parancsot, amelyet különféle paraméterek követnek, hogy az eredményeket az Ön igényeihez igazítsák. Akár kezdő, akár tapasztalt PowerShell-felhasználó, ez a cikk segít megérteni a Get-MgUser hatékony használatát.

A Microsoft Graph PowerShell modul telepítése

Mielőtt belemerülne a Microsoft Graph és a PowerShell világába, a Microsoft Graph PowerShell modul telepítése az első sarkalatos lépés. Ez a modul, a Microsoft Graph API átfogó burkolója, felváltja a régebbi Azure AD-modult, egyszerűsített és hatékony módot biztosítva az összes Microsoft-szolgáltatással való interakcióhoz. Íme egy egyszerű útmutató a kezdéshez:

Ha ellenőrizni szeretné, hogy a Microsoft Graph Module már telepítve van-e, használja a Get-InstalledModule parancsmagot:


Get-InstalledModule Microsoft.Graph

Telepítési előfeltételek

  • Győződjön meg arról, hogy a PowerShell legújabb verziója telepítve van a rendszerére. A Microsoft Graph PowerShell Module támogatja a Windows PowerShell 5.1-et és a PowerShell 7-et is.
  • Ellenőrizze, hogy rendszergazdai hozzáféréssel rendelkezik-e az Azure AD-hez (Microsoft Entra). Ez kulcsfontosságú a Get-MgUser parancsok „elégtelen jogosultság” hiba nélküli végrehajtásához.

Telepítési lépések

A Microsoft Graph PowerShell modul Windows rendszerhez történő telepítéséhez kövesse az alábbi lépéseket:

  • Nyissa meg a PowerShell-konzolt vagy a Windows Terminált rendszergazdaként.
  • Futtassa a következő parancsot: Install-Module Microsoft.Graph -Scope CurrentUser. Ez telepíti a modult az aktuális felhasználó számára, elkerülve a rendszerszintű változtatásokat.
  • Ha a rendszer kéri, fogadja el a nem megbízható lerakat a telepítés folytatásához.

Ez a parancs letölti és telepíti a Microsoft Graph PowerShell modul legújabb verzióját a PowerShell-galériából.

Opcionális bétaverzió: A legújabb funkciók és parancsmagok eléréséhez a béta verzió a következővel telepíthető: Install-Module Microsoft.Graph.Beta -Scope CurrentUser.

A Microsoft Graph PowerShell Modul megkönnyíti a Microsoft Cloud szolgáltatások kezelésének egységes megközelítését, és támogatja a modern hitelesítési módszereket több platformon. Nyílt forráskódú jellege és rendszeres frissítései kompatibilitást biztosítanak a Graph API legújabb változásaival, így a rendszergazdák és a fejlesztők számára egyaránt elengedhetetlen eszköz.

Csatlakozás a Microsoft Graphhoz a PowerShell segítségével

A Microsoft Graphhoz való csatlakozás a PowerShell segítségével egyszerű folyamat, de gondos figyelmet igényel az engedélyek és a hatókörök, hogy biztosítsa a kívánt feladatok elvégzéséhez szükséges hozzáférést. Íme egy lépésről lépésre szóló útmutató a kapcsolat létrehozásához, amely mind a delegált, mind a csak alkalmazás hozzáférési módokhoz igazodik.

Delegált hozzáférési kapcsolat

  1. A szükséges engedélyek meghatározása: Használja a Find-MgGraphPermission vagy Find-MgGraphCommand parancsmagot a feladatokhoz szükséges engedélyek azonosításához. A felhasználókezelés általános hatókörei közé tartozik a User.Read.All a felhasználói profilok olvasásához és az AuditLog.Read.All a megfigyelési naplók eléréséhez.
  2. Csatlakozás a Microsoft Graphhoz: Futtassa a Connect-MgGraph -Scopes "User.Read.All", "AuditLog.Read.All" parancsot a PowerShellben.
  3. Kapcsolat ellenőrzése: Futtasson egy Get-MgUser tesztparancsot a sikeres csatlakozás és a bérlő felhasználói fiókjaihoz való hozzáférés megerősítéséhez.
  4. Ha először csatlakozik, egy engedélykérés ablak jelenik meg. Adja meg az adminisztrátor hozzájárulását a folytatáshoz.

Csak alkalmazás-hozzáférési kapcsolat az Azure App ID használatával

A Microsoft Graphhoz való csatlakozáshoz az App-Only Access Connection használatával regisztrálnia kell az alkalmazást a Microsoft Entra felügyeleti központban, és hozzá kell rendelnie egy titkos ügyfél titkosságot (alkalmazásjelszót), egy tanúsítványt vagy egy egyesített azonosító hitelesítő adatot. Ezután konfigurálja a Microsoft Graph alkalmazás engedélyeit az alkalmazásban. Bővebben itt: Hogyan lehet csatlakozni a Microsoft Graphhoz a PowerShell segítségével?

A csak alkalmazásokhoz való hozzáféréssel bejelentkezett felhasználó nélkül hajthat végre műveleteket, ami ideális automatizált szkriptekhez és háttérszolgáltatásokhoz.

További tippek:

  • API-verziók váltása: A legújabb funkciók vagy bétaparancsok eléréséhez váltson a béta verzióra a Select-MgProfile -Name Beta használatával.
  • Engedélyek hatókörei: Mindig ellenőrizze a műveletekhez szükséges engedélyek hatóköreit (User.Read.All, Group.ReadWrite.All). Ezekhez az engedélyekhez általában alkalmazás-, felhőalkalmazás-adminisztrátor vagy globális rendszergazdai szerepkörrel rendelkező fiókra van szükség.
  • Leválasztás: Ne felejtse el leválasztani a munkamenetet a feladatok elvégzése után a Disconnect-MgGraph használatával a biztonság megőrzése érdekében.

Az alábbi lépések és tippek követésével hatékonyan csatlakozhat a Microsoft Graphhoz a PowerShell segítségével, lehetővé téve a Microsoft 365 szolgáltatások és adatok precíz és hatékony kezelését. Függetlenül attól, hogy felhasználóspecifikus műveletekhez delegált hozzáférést, vagy csak alkalmazásalapú hozzáférést használ szélesebb körű, alkalmazásvezérelt feladatokhoz, a csatlakozási folyamat és a szükséges engedélyek megértése kulcsfontosságú a Microsoft Graph teljes erejének kihasználásához.

Most, hogy már megvan a Get-MgUser alapvető ismerete, nézzünk meg néhány gyakorlati példát arra, hogyan használhatjuk ezt a parancsot a felhasználói információk hatékony lekérésére.

Egyetlen felhasználó adatainak lekérése a Get-MgUser parancsmaggal

Egyetlen felhasználó adatainak lekérése a Microsoft Graphban a Get-MgUser parancsmag használatával egy egyszerű folyamat, amely személyre szabható konkrét felhasználói adatok kinyerésére az Ön igényei alapján. A következőképpen használhatja hatékonyan ezt a parancsmagot, hogy részletes információkat gyűjtsön egy adott felhasználóról:

Alapszintű felhasználói visszakeresés

Ha egyetlen felhasználóról szeretne alapvető információkat kapni, használhatja a -UserId paramétert a felhasználói azonosítóval vagy a UserPrincipalName-mel. Például:


Get-MgUser -UserId john.doe@Crescent.com

Ez a parancs lekéri a felhasználó alapvető adatait, például azonosítóját, megjelenített nevét, e-mail címét és egyszerű felhasználói nevét. A felhasználó objektumazonosítóját is átadhatja ennek a parancsmagnak.

Felhasználói információk bővítése

A -ExpandProperty paraméterrel részletesebb információkat találhat, beleértve az olyan kapcsolatokat, mint a felhasználó kezelője vagy a közvetlen jelentések. Például egy felhasználó kezelői adatainak lekéréséhez hajtsa végre a következőt:


Get-MgUser -UserId "michael.brown@Crescent.com" -ExpandProperty Manager | Select-Object @{Name = 'Manager'; Expression = {$_.Manager.AdditionalProperties.mail}}

Hasonlóképpen, ha egy listát szeretne kapni a felhasználók közvetlen jelentéseiről:


Get-MgUser -UserId AdeleV@Crescent.com -ExpandProperty directReports | Select-Object @{Name = 'DirectReports'; Expression = {$_.directReports.AdditionalProperties.mail}}

Az adatvisszakeresés testreszabása

A Get-MgUser parancsmag rugalmasságot kínál a lekérhető adatok tekintetében. Az olyan paraméterek használatával, mint a -Property és a -Filter, a kimenetet saját igényeihez igazíthatja.

Válassza ki a konkrét tulajdonságokat:

Alapértelmezés szerint a Get-MgUser korlátozott tulajdonságkészletet kér le minden felhasználó számára. Előfordulhatnak azonban olyan esetek, amikor további tulajdonságokhoz kell hozzáférnie. Szerencsére a Get-MgUser lehetővé teszi az eredmények kiterjesztését az összes elérhető tulajdonságra. Az egyes felhasználók összes tulajdonságának lekéréséhez használja a -Property paramétert. Például:

A felhasználó részlegének és irodai helyének meghatározásához a következőket kell használnia:


Get-MgUser -UserId Steve@Crescent.com -Property DisplayName, mail,department | Select-Object DisplayName, Mail, Department

A felhasználói objektum összes elérhető tulajdonságának lekéréséhez használja a get-member parancsmagot:


Get-Mguser | Get-Member -MemberType Property

Ez a parancs visszaadja az összes elérhető tulajdonságot a Microsoft 365-környezet minden felhasználója számára.

Felhasználók szűrése: A -Filter paraméter lehetővé teszi, hogy meghatározott feltételek, például osztály vagy munkakör alapján keressen felhasználókat. Bár ezt gyakrabban használják több felhasználó felsorolására, akkor is hasznos lehet, ha ismeri a felhasználó információinak egy részét. Például egy adott részlegből származó felhasználó kereséséhez:


Get-MgUser -Filter "department eq 'Sales'" -All

Konkrét tulajdonságok kiválasztása: Előfordulhat, hogy nem mindig van szüksége az alapértelmezés szerint megadott összes információra. Csak meghatározott tulajdonságok, például Megjelenítési név és levél lekéréséhez használja a Select-Object parancsmagot. Például:


Get-MgUser | Select-Object DisplayName, Mail

Ez a parancs úgy szűri a kimenetet, hogy csak a felhasználó megjelenített nevét és e-mail címét tartalmazza.

A Get-MgUser parancsmag parancsai és paraméterei nemcsak a felhasználói információk széles körének az Azure Active Directoryból (Azure AD) való lekérését segítik elő, hanem kiemelik a parancsmag sokoldalúságát a különböző felhasználókezelési feladatok kezelésében. Ezen lehetőségek megértésével és alkalmazásával hatékonyan kezelheti a felhasználói adatokat a Microsoft 365 környezetben, így biztosítva, hogy szükség szerint hozzáférjen a legrelevánsabb és legfrissebb információkhoz.

Szerezze meg az összes Microsoft 365-felhasználó listáját

A Microsoft Entra ID és a Microsoft 365 környezet összes felhasználójával kapcsolatos információk lekérése kritikus feladat a rendszergazdák számára. A Microsoft Graph PowerShell SDK egyik összetevője, a Get-MgUser parancsmag leegyszerűsíti ezt a folyamatot azáltal, hogy számos paramétert kínál az átfogó felhasználókezeléshez. A következőképpen használhatja a Get-MgUser-t a felhasználói adatok hatékony lekéréséhez:

Alapvető parancs az összes felhasználó lekéréséhez

Alapértelmezés szerint a Get-MgUser parancsmag csak az első 100 eredményt adja vissza. Az Azure Active Directoryban lévő összes felhasználó listázásához használja a -All paramétert a Get-MgUser parancsmaggal. Ez a parancs az összes felhasználót lapozgatja, biztosítva, hogy minden fiókot lekérjen:


Get-MgUser -All

Ez a parancs visszaadja a bérlő összes felhasználójának listáját az alapvető tulajdonságaikkal együtt.

Ha részletesebb nézetet szeretne látni, beleértve az azonosítót, a DisplayName-et, a levelet és a UserPrincipalName-et, formázhatja a kimenetet:


Get-MgUser -All | Format-List ID, DisplayName, Mail, UserPrincipalName

Felhasználók szűrése és rendezése tulajdonságok alapján

Bár a Get-MgUser alapvető szűrési lehetőségei hatékonyak, előfordulhatnak olyan helyzetek, amikor fejlettebb szűrési képességekre van szükség. Szerencsére a Get-MgUser további paramétereket kínál a lekérdezések finomításához. Alkalmazhatja a -Filter paramétert olyan operátorokkal, mint az eq (egyenlő), ne (nem egyenlő), gt (nagyobb, mint), ge (nagyobb vagy egyenlő), lt (kisebb, mint) és le (kisebb vagy egyenlő) és startsWith segítségével szűkítheti a felhasználói listát meghatározott feltételek alapján.

Tegyük fel, hogy csak a felhasználók egy meghatározott részhalmazát szeretné lekérni bizonyos tulajdonságok, például a részleg alapján, amelyhez tartoznak. Ezt a -Filter paraméterrel érheti el. Például:


Get-MgUser -Filter "Department eq 'Marketing'"

Ez a parancs visszaadja az összes olyan felhasználót, akinek a részlegének beállítása „Marketing”.

Nézzünk még néhány példát a felhasználók Azure Active Directoryból való szűrésére:

A vendégek kivételével az összes felhőfelhasználó listázásához alkalmazhat egy szűrőt a következőképpen:


Get-MgUser -Filter "UserType eq 'Member'" -All

A helyszíni szinkronizált felhasználók lekérése és megjelenítési név szerinti rendezése:


Get-MgUser -Filter "OnPremisesSyncEnabled eq true" -All | Sort-Object DisplayName

Szűrjük ki az elmúlt 30 napban létrehozott összes felhasználót:


 Get-MgUser -Filter "CreatedDateTime ge $((Get-Date).AddDays(-30).ToString("s"))Z" -All

Több feltételt kombinálhat ÉS, VAGY logikai operátorokkal:


Get-MgUser -Filter "Country eq 'Canada' and Department eq 'Sales'"

Íme egy másik példa az AND operátor használatára speciális lekérdezésekben:


Get-MgUser -Filter "(accountEnabled eq true) and (startswith(Department,'Sales'))"

Más összehasonlító operátorok is támogatottak: StartsWith, EndsWith és NE:


Get-MgUser -Filter "startsWith(mail,'steve')" -All -ConsistencyLevel Eventual

A Filter paraméteren kívül a Where-Object parancsmagot felhasználói profilok szűrésére is használhatja (ami egyébként kevésbé hatékony!):


Get-MgUser -All | Where-Object {$_.DisplayName -like "*sam*"}

Részletes és specifikus kereséseket hozhat létre a kívánt felhasználói információk pontos részhalmazának kinyeréséhez a címtárból. Ez különösen hasznos jelentések készítéséhez, felhasználókezelési feladatok automatizálásához vagy más szkriptekkel és szolgáltatásokkal való integrációhoz.

Szűrés egyszerű felhasználói név alapján

Ha a felhasználókat a UserPrincipalName alapján szeretné szűrni, akkor használja a -Filter paramétert a UserPrincipalName tulajdonsággal együtt. Például:


Get-MgUser -Filter "UserPrincipalName eq 'john.doe@Crescent.com'"

Ez a parancs a megadott UserPrincipalName felhasználót adja vissza.

Felhasználók szűrése fiók állapota szerint

A felhasználói fiókok hatékony kezeléséhez a Microsoft 365 környezetben, különösen a fiók állapotát illetően, a Get-MgUser parancsmag robusztus szűrési képességeket kínál. A következőképpen használhatja ezeket a funkciókat a felhasználói fiókok állapotának szűrésére és lekérésére:

Fiók állapotának lekérése:

Kezdje az AccountEnabled tulajdonság felvételével a -Property paraméter használatával. Ezzel a művelettel megtekintheti, hogy egy fiók engedélyezve van-e vagy letiltva.


Get-MgUser -all -Property Id, DisplayName, UserPrincipalName, AccountEnabled | Select-Object Id, DisplayName, UserPrincipalName, AccountEnabled

Szűrés a fiók állapota alapján:

A -Filter paraméter hasznos, amikor a felhasználókat fiókállapotuk alapján szeretné listázni. Akár az engedélyezett, akár a letiltott fiókokat szeretné azonosítani, ez a paraméter az accountEnabled tulajdonsággal kombinálva egyszerűvé teszi. Például csak az engedélyezett felhasználók lekéréséhez:


Get-MgUser -Filter "accountEnabled eq true" -All

A letiltott felhasználók listázása:


Get-MgUser -Filter "accountEnabled eq false"

Ne felejtsen el olyan operátorokat használni, mint az eq (egyenlő), és, vagy és startswith összetettebb lekérdezésekhez, annak biztosítása, hogy a szűrőlekérdezés dupla idézőjelekbe, a karakterláncok értékei pedig szimpla idézőjelekbe kerüljenek.

Egy adott felhasználó fiókállapotának ellenőrzéséhez használja:


Get-MgUser -UserId "Steve@Crescent.com" -Property DisplayName, UserPrincipalName, AccountEnabled | Select-Object DisplayName, UserPrincipalName, AccountEnabled

Az Azure AD keresése a Get-MgUser -Search paraméterrel

A -Search paraméter különösen hasznos lehet a felhasználók kulcsszavak alapján történő megtalálásához, javítva a lekérdezések pontosságát.

Az árnyaltabb keresés érdekében a -Search paraméter használható a ConsistencyLevel eventual opcióval együtt. Ez a megközelítés akkor hasznos, ha olyan konkrét tulajdonságok alapján keres felhasználókat, amelyek nem érhetők el közvetlenül a -Filter paraméteren keresztül.


 Get-MgUser -Search "DisplayName:sam" -ConsistencyLevel Eventual

Ezeknek a parancsoknak és paramétereknek a kihasználásával átfogó képet kaphat a szervezeten belüli felhasználói fiókok állapotáról, és szabályozhatja azokat. Ez a képesség elengedhetetlen a rutin auditokhoz, a megfelelőség biztosításához és a felhasználói hozzáférés hatékony kezeléséhez.

Menedzser információk megszerzése

A Microsoft 365-környezet felhasználóinak kezelői információinak megszerzéséhez a Get-MgUser parancsmag segítségével kibonthatja a „Manager” tulajdonságot. Ez a parancsmag lehetővé teszi a felhasználó kezelői adatainak lekérését, beleértve a nevet, a megjelenített nevet és az e-mail címet, amelyek kulcsfontosságúak lehetnek a szervezeti felépítésben és a kommunikációs folyamatelemzésben. A következőképpen használhatja hatékonyan ezt a parancsmagot:

A felhasználó megadásához használja a -UserId paramétert. Például:


Get-MgUser -UserId "Steve@Crescent.com" -ExpandProperty Manager | Select-Object @{Name = 'Manager'; Expression = { $_.Manager.AdditionalProperties.displayName} }

Ez a parancs lekéri a kezelőnek a -UserId által megadott felhasználóhoz rendelt adatait.

Menedzserek lekérése minden felhasználó számára

Az összes felhasználó kezelői információinak megszerzéséhez a parancsokat összeláncolhatja. Kezdje a Get-MgUser -All paranccsal az összes felhasználó listázásához, majd az eredményeket a Select-Object-ba irányítsa egy egyéni kifejezéssel a kezelő részleteinek kinyeréséhez. Például:


Get-MgUser -All -ExpandProperty Manager | Select-Object Id, UserPrincipalName, @{Name = 'Manager'; Expression = { $_.Manager.AdditionalProperties.mail } }

Ez a parancs hatékonyan felsorolja az összes felhasználót a menedzserük e-mailjeivel együtt, bemutatva a PowerShell képességét a tömeges adatműveletek kezelésére.

A fenti szkript használatával megfelelően kezelheti és elemezheti a menedzser-felhasználó kapcsolatokat a szervezeten belül, javítva a felügyeletet és a működési hatékonyságot.

Licenccel rendelkező és engedély nélküli felhasználók listázása

A Get-MgUser azt is lehetővé teszi, hogy licenceket szerezzen a felhasználók számára a Microsoft 365 környezetében. Például, ha le szeretné kérni azoknak a felhasználóknak a listáját, akiknek licence van hozzárendelve, szűrhet a AssignedLicenses tulajdonsággal. Íme egy példa:


Get-MgUser -Filter 'assignedLicenses/$count ne 0' -ConsistencyLevel eventual -CountVariable licensedUserCount -All -Property UserPrincipalName, DisplayName,AssignedLicenses | Format-Table -Property UserPrincipalName,DisplayName,AssignedLicenses

A licencelt és nem licenccel rendelkező felhasználók azonosítása és kezelése a Microsoft 365-környezetben az adminisztráció kritikus aspektusa. A Get-MgUser parancsmag hatékony szűrési lehetőségeket kínál az ilyen felhasználótípusok megkülönböztetésére. A következőképpen listázhatja ki hatékonyan az összes nem engedélyezett felhasználót:


Get-MgUser -Filter 'assignedLicenses/$count eq 0' -ConsistencyLevel eventual -CountVariable unlicensedUserCount -All

Ez azokat a felhasználókat célozza meg, akik nem kaptak licencet.

Egy adott felhasználóhoz rendelt licencek beszerzése:

A felhasználók konkrét licencadataihoz a Get-MgUserLicenseDetail parancsmag használható a felhasználói azonosítóval együtt, hogy átfogó licenc-hozzárendelési információkat kérjen le.


Get-MgUserLicenseDetail -UserId "steve@Crescent.com"

E parancsok használatával a rendszergazdák hatékonyan kezelhetik a felhasználói licenceket a Microsoft 365-ös környezetükben, biztosítva az erőforrások megfelelő elosztását és a megfelelőségi követelmények betartását. Ez a folyamat segít az auditálásban, valamint a licencbeszerzési és optimalizálási stratégiák tervezésében.

A felhasználó bejelentkezési tevékenységének meghatározása

A felhasználó bejelentkezési tevékenységének meghatározása a Microsoft 365-környezet figyelésének és biztonságának kritikus szempontja. A Microsoft Graph Beta API-n keresztül elérhető SignInActivity attribútum értékes betekintést nyújt az Azure AD-be való legutóbbi sikeres interaktív bejelentkezésbe. A következőképpen tudja kihasználni ezt az attribútumot a PowerShell használatával:

Váltás béta API-ra:

A SignInActivity attribútum nem érhető el a v1.0 API-ban, ezért át kell váltani a béta verzióra. Ezt a „Select-MgProfile” parancsmag használatával érheti el, amely beállítja a PowerShell-munkamenetet a béta API használatára, biztosítva ezzel, hogy hozzáférjen a legújabb szolgáltatásokhoz és attribútumokhoz, beleértve a SignInActivity-t.

Bejelentkezési tevékenység lekérése

A Get-MgUser parancsmag használata: a SignInActivity lekéréséhez egy adott felhasználóhoz, a -UserId paramétert meg kell adni a felhasználó Azure AD GUID azonosítójával. A parancs valahogy így néz ki:


Connect-MgGraph -Scopes "User.Read.All", "AuditLog.Read.All"

#Switch the Microsoft Graph profile to BETA
Select-MgProfile -Name "beta"

#Get the User
$User =  Get-MgUser -UserId "steve@crescent.com"

#Get the sign in Activity of the user
Get-MgUser -UserId $User.ID -Property SignInActivity | Select-Object -ExpandProperty SignInActivity

További tulajdonságok elérése:

Miután lekérte a SignInActivity attribútumot tartalmazó felhasználói objektumot, a bejelentkezési tevékenység a további tulajdonságokon keresztül érhető el. Ez a módszer mélyebb betekintést tesz lehetővé a felhasználói viselkedésbe:


$UserSigninActivity = Get-MgUser -UserId $User.ID -Property SignInActivity,LastPasswordChangeDateTime

#Get the Signin Acvivity: LastSignInDateTime, LastNonInteractiveSignInDateTime
$UserSigninActivity.SignInActivity

#Get the past passwor change date
$UserSigninActivity.LastPasswordChangeDateTime

Fontos megjegyezni, hogy az utolsó sikeres bejelentkezési időt részletező LastSignInDateTime tulajdonság csak a béta API-n keresztül érhető el. Ennek az attribútumnak az elérhetősége állandó volt, mióta a megjelenítéssel kapcsolatos problémát 2021. március 3-án megoldották.

Minden felhasználó utolsó bejelentkezési dátumának lekérése


Get-MgUser -All -Property Id, UserPrincipalName, DisplayName, SignInActivity | Select-Object Id, UserPrincipalName, DisplayName, @{Name = 'LastSignInDateTime'; Expression = { $_.SignInActivity.LastSignInDateTime }}, @{Name = 'LastNonInteractiveSignInDateTime'; Expression = { $_.SignInActivity.LastNonInteractiveSignInDateTime } } | Out-GridView -Title "Sign-in Logs"

Az alábbi lépések követésével hatékonyan figyelheti a felhasználói bejelentkezési tevékenységeket a Microsoft 365-környezetben. Ez a folyamat nemcsak a biztonságot növeli azáltal, hogy lehetővé teszi a szabálytalan bejelentkezési minták azonosítását, hanem pontos és időszerű felhasználói hozzáférési adatok biztosításával segíti a megfelelőségi és ellenőrzési feladatokat is.

Felhasználói adatok exportálása CSV-fájlba

A felhasználói adatok CSV-fájlba exportálása egyszerű az Export-CSV paranccsal. Ez a funkció felbecsülhetetlen értékű jelentéskészítési vagy auditálási célokra. Miután lekérte az összes felhasználót a Get-MgUser -All paranccsal, vezesse a kimenetet az Export-CSV formátumba:


Get-MgUser -All | Export-CSV -Path "AzureADUsers.csv"

Egyéni tulajdonságok vagy bővítményadatok hozzáadásához használja a $select OData lekérdezési opciót további tulajdonságok megadásához az exportálás előtt:


Get-MgUser -All -Property displayName,mail,jobTitle | Select displayName,mail,jobTitle | Export-CSV -Path "CustomAzureADUsers.csv"

Ezek a lépések felvázolják a felhasználói adatok hatékony kezelésének és exportálásának folyamatát az Azure AD-ből a PowerShell Get-MgUser parancsmagjával. A -All paraméter, valamint a szűrési és exportálási beállítások használatával a rendszergazdák hatékonyan felügyelhetik a felhasználói fiókokat Microsoft 365-környezetükben.

A felhasználói adatok CSV-fájlba exportálásának folyamatának egyszerűsítése érdekében, különösen, ha a Microsoft 365-környezetben meghatározott felhasználói csoportokkal foglalkozik, a PowerShell-szkriptek kombinálása hatékonyan javítja az adatkezelési képességeket. Íme egy strukturált megközelítés ennek eléréséhez:

  1. Szkriptek kombinálása a célzott exportáláshoz:

    • Kezdje a Get-MgUser parancsmag használatával a szükséges felhasználói adatok lekéréséhez. Ez a parancsmag sokoldalú, lehetővé teszi a kontextus (delegált vagy alkalmazás) meghatározását, és biztosítja, hogy rendelkezzen a megfelelő engedélyekkel a művelethez.
    • Ezután alkalmazzon szűrőket, hogy szűkítse a felhasználókat olyan kritériumok alapján, mint a munkakörök és a részlegek. Ez a lépés elengedhetetlen ahhoz, hogy azokra a felhasználói csoportokra összpontosítson, amelyek megfelelnek a megadott feltételeknek.
  2. Exportálás CSV-fájlba: A kívánt felhasználói adatok kiszűrése és összeállítása után az utolsó lépés az adatok CSV-fájlba való exportálása. Használja az Export-CSV parancsmagot, és adja meg azt az elérési utat, ahová a CSV-fájlt menteni szeretné.

Get-MgUser -Filter "jobTitle eq 'Director' and department eq 'Operations'" -Property DisplayName, UserPrincipalName, JobTitle, Department, AssignedLicenses, LastPasswordChangeDateTime | Select-Object DisplayName, UserPrincipalName, JobTitle, Department, AssignedLicenses, LastPasswordChangeDateTime | Export-CSV -Path "FilteredUsers.csv" -NoTypeInformation

Ez a parancs hatékonyan szűri a felhasználókat munkakör és részleg szerint, kiválasztja a kimenetben szereplő konkrét tulajdonságokat, és exportálja az adatokat egy „FilteredUsers.csv” nevű CSV-fájlba.

Szerezzen jelszó soha lejárt jelzőt minden felhasználó számára, és exportálja CSV-fájlba

Ahhoz, hogy a jelszó soha nem jár le jelzőt minden felhasználó számára megkapja, és a Microsoft Graph PowerShell segítségével CSV-fájlba exportálja, használja az alábbi szkriptet:

  1. Csatlakozzon a Microsoft Graphhoz a Connect-MgGraph parancsmag segítségével, és adja meg a szükséges hatóköröket.
  2. Töltse le az összes felhasználót a Get-MgUser parancsmag használatával, és válassza ki a DisplayName, UserPrincipalName és PasswordPolicies tulajdonságokat.
  3. Szűrje ki azokat a felhasználókat, akiknek a jelszószabályzata tartalmazza a DisablePasswordExpiration értéket.
  4. Exportálja a szűrt felhasználókat egy CSV-fájlba az Export-Csv parancsmag használatával.

#Connect to Microsoft Graph
Connect-MgGraph -Scopes "User.Read.All"

#Get Password Never Expire flag for all users
$PasswordNeverExpire = Get-MgUser -All -Property DisplayName, UserPrincipalName, PasswordPolicies | Select-Object DisplayName, UserprincipalName, @{
    Name = "PasswordNeverExpires"; Expression = { $_.PasswordPolicies -contains "DisablePasswordExpiration"}
}

$PasswordNeverExpire
#Export the data to CSV file
$PasswordNeverExpire | Export-CSV -Path "C:\Temp\PasswordNeverExpire.csv" -NoTypeInformation

Ennek a strukturált megközelítésnek a követésével hatékonyan kezelheti és exportálhatja a részletes felhasználói információkat a Microsoft 365-környezetből, egyedi igényei szerint. Ez a folyamat nemcsak a szervezeti auditokat segíti, hanem támogatja a proaktív felhasználókezelési stratégiákat is.

A Get-MgUser gyakori problémáinak elhárítása

Noha a Get-MgUser hatékony eszköz, használata során gyakori problémákkal találkozhat. Nézzünk meg néhányat ezek közül a problémák közül és azok lehetséges megoldásait.

Nincs elegendő jogosultság a művelet befejezéséhez

Ha egy hibaüzenetet kap, amely szerint „Nincs elegendő jogosultság a művelet befejezéséhez”, az azt jelenti, hogy a Get-MgUser parancs futtatásához használt fiók nem rendelkezik a szükséges engedélyekkel. A probléma megoldásához győződjön meg arról, hogy a fiók rendelkezik a megfelelő rendszergazdai jogosultságokkal a Microsoft 365 környezetben. A rendszergazdáknak meg kell adniuk a megfelelő engedélyeket (például User.Read.All az összes felhasználói profil olvasásához) az Azure AD felügyeleti központban az API-engedélyek alatt a PowerShellhez társított alkalmazásregisztrációhoz.

A Get-MgUser nem ismerhető fel parancsmag neveként

Ha a „Get-MgUser nem ismerhető fel egy parancsmag neveként” hibaüzenetet lát, az azt jelenti, hogy a Microsoft Graph PowerShell-modulja nincs telepítve a rendszerére. A modul telepítéséhez futtassa az „Install-Module Microsoft.Graph” programot. További információ itt található: telepítse a Microsoft Graph modult.

Szűrési és lekérdezési problémák

Ha szintaktikai hibákat kap, vagy nem ad eredményt a -Filter opció használatakor, győződjön meg arról, hogy az OData lekérdezés szintaxisa helyes. A gyakori hibák közé tartozik az egyszeres idézőjelek (') helytelen használata a karakterlánc-értékek körül vagy a nem támogatott szűrőműveletek használata.

Tulajdonválasztási hibák

Hibákat vagy váratlan eredményeket kap, amikor a -Property opciót használja a tulajdonságok megadásához? Ellenőrizze, hogy a kért ingatlannevek helyesek és támogatottak-e. Alapértelmezés szerint nem minden felhasználói tulajdonság érhető el; egyesekhez speciális engedélyekre vagy további lekérdezési paraméterekre van szükség a hozzáféréshez.

Következtetés

Ha Microsoft 365-környezetben kell lekérnie a felhasználók adatait, a Get-MgUser PowerShell-parancsmag a megfelelő eszköz. Lehetővé teszi mind az alapvető, mind a speciális lekérdezések végrehajtását a felhasználói adatok lekéréséhez, és a visszaadott adatokat az Ön igényeihez szabja. Ebben a cikkben elmélyültünk a Get-MgUser parancsmag átfogó képességeivel és annak kulcsfontosságú szerepével, amely a felhasználói adatoknak a Microsoft Graphon belüli, PowerShell-en keresztüli bejuttatásában játszik szerepet. A Microsoft Graph PowerShell Module telepítésének kezdeti lépéseitől a felhasználói információk kinyerésére és exportálására szolgáló fejlett technikákig a kidolgozott stratégiák megvilágítják a parancsmag sokoldalúságát a felhasználói adatok hatékony elérésében és kezelésében.

Ebben a PowerShell-parancsmagban a részletes felhasználói elemzés megkönnyítésében rejlő lehetőségek, valamint a különféle adminisztratív igényekhez való alkalmazkodóképessége hangsúlyozza jelentőségét a kortárs IT-ökoszisztémákban. A parancs és különféle paramétereinek megértésével szabadjára engedheti a hatékonyság erejét és egyszerűsítheti adminisztrációs feladatait. Függetlenül attól, hogy szűrni kell a felhasználókat, fel kell fedeznie az összes tulajdonságot, el kell végeznie a problémákat, vagy bővítenie kell a funkciókat, a Get-MgUser mindent megtesz. Tehát kezdje el felfedezni a lehetőségeket, és hozza ki a legtöbbet a Get-MgUserből még ma!

Gyakran Ismételt Kérdések:

Mi a célja a Get-MgUser parancsmagnak a PowerShellben?

A Get-MgUser PowerShell-parancsmag lekéri a felhasználói információkat egy Microsoft 365 környezetben. Lehetővé teszi az összes felhasználó listázását, átfogó részletek megszerzését egy adott felhasználóról, vagy a felhasználók helyének meghatározását meghatározott attribútumok, például osztályuk vagy beosztásuk alapján.

Milyen lépésekkel csatlakozhat a Microsoft Graph API-hoz PowerShell-en keresztül?

Graph API meghívásához a PowerShellben először a Connect-MgGraph parancs végrehajtásával jelentkezzen be, és adja meg a szükséges hatóköröket. A kapcsolat létrehozása után szabadon hívhatja az elérhető Graph API metódusokat.

Mik a Get-MgUser használatának előfeltételei?

A Get-MgUser használatához telepíteni kell a Microsoft Graph PowerShell modult. Telepítheti a PowerShell „Install-Module Microsoft.Graph” parancsának futtatásával. Ezenkívül rendelkeznie kell a „User.Read.All” engedéllyel, hogy hozzáférjen a felhasználói információkhoz a Microsoft 365 környezetben.

Hogyan kérhetem le egy adott felhasználó adatait a Get-MgUser segítségével?

Egy adott felhasználó adatainak lekéréséhez használhatja a „-UserId” paramétert, amelyet a felhasználó azonosítója vagy egyszerű felhasználói név (UPN) követ. Például:

Get-MgUser -UserId "john.doe@crescent.com".

Hogyan szűrhetem a Get-MgUser által visszaadott felhasználói tulajdonságokat?

A „-Tulajdonság” paraméterrel megadhatja a lekérni kívánt konkrét tulajdonságokat, majd átviheti a Select parancsmagba. Például:

Get-MgUser -UserId "steve@crescent.com" -Property ID, Mail | Select ID, Mail

Lehetséges a felhasználók lekérése egy adott tulajdonságérték alapján?

Igen, a „-Filter” paraméterrel lekérheti a felhasználókat egy adott tulajdonságérték alapján. Például egy adott részleg felhasználóinak lekéréséhez:

Get-MgUser -Filter "Department eq 'Marketing'"

Hogyan exportálhatom fájlba a Get-MgUser által lekért felhasználói információkat?

A felhasználói információkat az „Export-Csv” parancsmag segítségével fájlba exportálhatja. Például:

Get-MgUser -Filter "jobTitle eq 'Director'" | Export-Csv -Path "C:\Temp\Directors.csv" -NoTypeInformation

Hogyan kérhetem le a szervezetem összes felhasználójának listáját a Get-MgUser használatával?

Ha a Get-MgUser használatával információkat szeretne lekérni a szervezet összes felhasználójáról, használja a -All paramétert. Például: Get-MgUser -All

Hogyan kereshetek egy adott felhasználót a Get-MgUser segítségével?

Ha egy adott felhasználót szeretne keresni a Get-MgUser használatával, a -Search paraméterrel megadhat egy keresési lekérdezést. Például a „sam” szót tartalmazó megjelenítési névvel rendelkező összes felhasználó kereséséhez használja a következő parancsot:

Get-MgUser -All -Search "DisplayName:sam" -ConsistencyLevel eventual

Kapcsolódó cikkek