Weboldal keresés

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).permissions

A 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.

Kapcsolódó cikkek