5 nagyszerű tipp a Microsoft Graph PowerShell-lel dolgozó rendszergazdáknak
A Microsoft Graph Explorer jelentős változást jelenthet a megszokotthoz képest, nemcsak az új parancsok és szolgáltatások miatt, hanem a gyors és hatékony munkavégzéshez követendő folyamatok miatt is.
Íme 5 nagyszerű tipp tőlem, amelyek biztosítják, hogy jobban működjön a Microsoft Graph PowerShell!
A beleegyezési folyamat megértése és létrehozása
Bár a Microsoft Graph PowerShell mögött meghúzódó alapvető mechanizmus megegyezik elődeivel, az adminisztrátorok számára eltérően és óvatosan kell kezelni. A színfalak mögött, amikor egy Microsoft Graph PowerShell modulból futtat egy parancsot, a Graph API hívása történik, amely ezután interakcióba lép a kapcsolódó Microsoft szolgáltatásokkal, a legtöbb esetben a Microsoft Entrával. Ez igaz volt a régebbi modulokra is, csak egy másik API-val kommunikáltak.
Az olyan rendszergazdáknak, mint te és én, további biztonsági megfontolásokat kell tenniük a Microsoft Graph PowerShell modulokkal, például meg kell fontolni, hogy globális adminisztrátornak vagy privilegizált szerepkörű adminisztrátornak kell-e beleegyeznie a szolgáltatási tagok engedélyeibe, mielőtt bizonyos parancsokat futtathatnának.
Például ahol korábban egy felhasználói rendszergazdai szerepkörrel rendelkező rendszergazda csatlakozhatott a régi modulhoz, és további segítség nélkül módosíthatta a felhasználókat, most, ha ugyanaz a felhasználói rendszergazda csatlakozik a Microsoft Graph PowerShellhez, nem hajthat végre semmilyen feladatot a globális rendszergazda kifejezett hozzájárulása nélkül. . Amit nem szeretne, az az, hogy a kiváltságos felhasználók kényelmi okokból globális rendszergazdai jogosultságokat kapjanak, Ön, mint globális rendszergazda feladata, hogy kényelmes és hatékony megoldást biztosítson.
Érdemes némi időt és erőfeszítést fektetni annak biztosítására, hogy az engedélyek jóváhagyása hatékony folyamata legyen, lehetővé téve az engedélyek gondos felülvizsgálatát a hozzárendelés előtt.
Használjon dedikált fiókokat a Microsoft Graph PowerShell használatához
A Microsoft Graph egy hatékony eszköz, a PowerShell SDK-val és a túlterhelt rendszergazdákkal párosulva veszélyes eszköz is lehet, ha nincs megfelelően biztosítva.
Amikor a Microsoft Graph PowerShell-lel dolgozik, használjon dedikált felhasználói fiókot, majd rendelje hozzá a fiókot közvetlenül ahhoz a szolgáltatási megbízóhoz, amelyhez a Microsoft Graph PowerShellhez való csatlakozáskor hitelesít.
Ez a lépés túlzásnak tűnhet, de ha a szervezetben egy fiókot feltörnek, a támadó az első és leggyorsabb módja annak, hogy felsorolja, mibe férkőzhet be, a kódon keresztül, és nagy valószínűséggel a Microsoft Graph használatával.
Egy dedikált fiók használata számos biztonsági előnnyel jár szervezete számára, például:
- A feltételes hozzáféréssel történő biztonság lehetősége a „Minden felhőalkalmazás” kiválasztásával fokozott biztonsággal, például helyalapú hozzáféréssel, munkamenet-házirendekkel és erősebb hitelesítéssel.
- Lehetővé teszi, hogy közvetlen hozzárendelést használjon az egyszerű szolgáltatáshoz, hogy könnyen szabályozza, ki használhatja a Microsoft Graph PowerShellt.
- A jogsértés valószínűségének korlátozása, mivel a fiókot csak az adott feladathoz használják.
- és még sok más!
Ismerje meg a HTTP-kérések működését
Minden alkalommal, amikor a Microsoft Graph PowerShell moduljaival futtat egy parancsot, a futtatott parancstól függően a rendszer egy HTTP-kérést küld a Graph API-nak a GET, POST, PUT, PATCH vagy DELETE metódussal.
Annak bizonyítására, hogy ezek a HTTP kérések automatikusan megtörténnek, a -debug paraméterrel megjelenítheti a kért HTTP URL-t, például itt a Get-MgUsert futtatom. b> parancsmag a szervezetem összes felhasználójának listájának lekéréséhez.
Láthatja, hogy azonnal kapunk néhány hibakereső tartalmat a konzol ablakában. Figyelje meg az Abszolút Uri-t, pontosan ez a HTTP-kérés, amelyet a Microsoft Graphnak küldenek. A HTTP-módszer a GET feliratot is mutatja, amikor információkat kérünk vagy töltünk le.
Íme egy másik példa, ahol egy adott felhasználó adatait kértem le. Figyelje meg, hogy az Abszolút Uri eltér attól, ahol az összes felhasználó adatait lekértem, most az általunk kért felhasználót mutatja az URL-ben.
Ha tudja, hogy alapvetően minden egyes parancs konkrét HTTP-kérésekhez kapcsolódik, jobb élményben lesz része a szkriptek hibakeresése, a dokumentáció olvasása és az engedélyek azonosítása során.
A böngésző fejlesztői eszközei a barátok a megfelelő parancs kitalálásához
Volt már olyan helyzetben, amikor a PowerShell segítségével módosítania kell a környezetét, de a dokumentáció nem világos, hogy melyik parancsot kell futtatni, vagy hogyan kell formázni a rakományt… A kedvenc webböngészőjében található beépített fejlesztői eszközök segítenek megoldod a problémát.
Például szeretném megakadályozni, hogy a szervezetem normál felhasználói új eszközöket csatlakozhassanak a Microsoft Entra ID-hez, de a feladat parancsa lehet egy a több ezer használható parancs közül.
A vizsgálati folyamatot leegyszerűsíthetem, ha a Microsoft Entra adminisztrációs központon keresztül végrehajtom a kívánt változtatást, majd a böngészőmben megnyitott hálózati fejlesztői eszközökkel láthatom, hogy milyen kérés érkezik.
A példa esetében a következő kérés érkezik:
- URI: https://graph.microsoft.com/beta/policies/deviceRegistrationPolicy
- Módszer: PUT
Mostanra megvan ez az információ, a megfelelő PowerShell-parancs kikövetkeztetésének leggyorsabb módja az, ha beilleszti az URI-t a Google Keresőbe, és megkeresi az API kapcsolódó Microsoft Learn dokumentációját:
A legtöbb esetben a Microsoft rendelkezésére állnak PowerShell-példák:
Az engedélyek megadása egyszerű, ha tudja, hol találja meg őket
A Microsoft Graph PowerShell-lel való munka során minden bizonnyal további kihívások is felmerülnek, mint például az új elnevezési konvenció, az új és korlátozott képességek, valamint a válaszok szerkezete, de az egyik legfontosabb tanulási görbe az, hogy tudja, mely engedélyekhez van szüksége előzetes jóváhagyásra. futtatsz egy scriptet.
Meg kell tanulnia, hogyan és hol találhatja meg a szkriptek futtatásához szükséges megfelelő engedélyeket, mivel a nem megfelelő engedélyek további kockázatoknak tehetik ki a szervezetet.
Íme egy példa: A felhasználónak folyamatos változtatásokat kell végrehajtania a felhasználói tulajdonságokon a helpdesk feladatai részeként, és el kell döntenie, hogy mely engedélyek felelnek meg leginkább az igényeinek. A következő parancsot futtatja az információ megkereséséhez:
(Find-MgGraphCommand Update-MgUser).permissionsA kimenet a következőképpen néz ki:
Name IsAdmin Description FullDescription
---- ------- ----------- ---------------
DeviceManagementApps.ReadWrite.All True Read and write Microsoft Intune apps Allows the app to read and write the properties, group assignments and status of apps, app configurations and app protection policies managed by Microsoft Intune.
DeviceManagementConfiguration.ReadWrite.All True Read and write Microsoft Intune Device Configuration and Policies Allows the app to read and write properties of Microsoft Intune-managed device configuration and device compliance policies and their assignment to groups.
DeviceManagementManagedDevices.ReadWrite.All True Read and write Microsoft Intune devices Allows the app to read and write the properties of devices managed by Microsoft Intune. Does not allow high impact operations such as remote wipe and password reset on the device’s owner.
DeviceManagementServiceConfig.ReadWrite.All True Read and write Microsoft Intune configuration Allows the app to read and write Microsoft Intune service properties including device enrollment and third party service connection configuration.
Directory.ReadWrite.All True Read and write directory data Allows the app to read and write data in your organization's directory, such as other users, groups. It does not allow the app to delete users or groups, or reset user passwords.
User.EnableDisableAccount.All True Enable and disable user accounts Allows the app to enable and disable users' accounts, on your behalf.
User.ManageIdentities.All True Manage user identities Allows the app to read, update and delete identities that are associated with a user's account that you have access to. This controls the identities users can sign-in with.
User.ReadWrite False Read and update your profile Allows the app to read your profile, and discover your group membership, reports and manager. It also allows the app to update your profile information on your behalf.
User.ReadWrite.All False Read and write all users' full profiles Allows the app to read and update user profiles without a signed in user.Míg az összes engedély lehetővé teszi legalább néhány felhasználói tulajdonság frissítését, mások nem csak a felhasználói tulajdonságok módosítását teszik lehetővé. Az itt kiválasztandó helyes engedély: User.ReadWrite.All. Ha helyette a Directory.ReadWrite.All engedélyt választja ki, akkor a feladat túljogosulttá válik, ami véletlen adatvesztéshez vagy annak kihasználásához vezethet.
A Microsoft Graph Explorer webeszköz használata barátságosabb megközelítést jelent az olvasási engedélyek terén. Ezzel az eszközzel kódpéldákat és a futtatott parancshoz szükséges engedélyeket kereshet. Az Engedélyek módosítása lapon megtalálhatja ugyanazokat az információkat, amelyeket a PowerShell használatával látott.






