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-MgUserparancsok „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
- A szükséges engedélyek meghatározása: Használja a
Find-MgGraphPermissionvagyFind-MgGraphCommandparancsmagot a feladatokhoz szükséges engedélyek azonosításához. A felhasználókezelés általános hatókörei közé tartozik aUser.Read.Alla felhasználói profilok olvasásához és azAuditLog.Read.Alla megfigyelési naplók eléréséhez. - Csatlakozás a Microsoft Graphhoz: Futtassa a
Connect-MgGraph -Scopes "User.Read.All", "AuditLog.Read.All"parancsot a PowerShellben. - Kapcsolat ellenőrzése: Futtasson egy
Get-MgUsertesztparancsot a sikeres csatlakozás és a bérlő felhasználói fiókjaihoz való hozzáférés megerősítéséhez. - 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 Betahaszná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-MgGraphhaszná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:
Szkriptek kombinálása a célzott exportáláshoz:
- Kezdje a
Get-MgUserparancsmag 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.
- Kezdje a
- 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.
- 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-CSVparancsmagot, é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:
- Csatlakozzon a Microsoft Graphhoz a
Connect-MgGraphparancsmag segítségével, és adja meg a szükséges hatóköröket. - Töltse le az összes felhasználót a
Get-MgUserparancsmag használatával, és válassza ki aDisplayName,UserPrincipalNameésPasswordPoliciestulajdonságokat. - Szűrje ki azokat a felhasználókat, akiknek a jelszószabályzata tartalmazza a
DisablePasswordExpirationértéket. - Exportálja a szűrt felhasználókat egy CSV-fájlba az
Export-Csvparancsmag 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, MailLehetsé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" -NoTypeInformationHogyan 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



