A Microsoft Entra ID használata az Intune API-k eléréséhez a Microsoft Graphban

A Microsoft Graph API mostantól támogatja az adott API-kkal és engedélyszerepkörökkel rendelkező Microsoft Intune. A Microsoft Graph API Microsoft Entra ID használ a hitelesítéshez és a hozzáférés-vezérléshez.
A Microsoft Graph Intune API-khoz való hozzáféréséhez a következőre van szükség:

  • Alkalmazásazonosító a következőkkel:

    • A Microsoft Entra ID és a Microsoft Graph API-k meghívására vonatkozó engedély.
    • Az adott alkalmazásfeladatokhoz kapcsolódó engedélyhatókörök.
  • Felhasználói hitelesítő adatok a következőkkel:

    • Engedély az alkalmazáshoz társított Microsoft Entra bérlő eléréséhez.
    • Az alkalmazásengedély-hatókörök támogatásához szükséges szerepköri engedélyek.
  • Az a végfelhasználó, aki engedélyt ad az alkalmazásnak az azure-bérlő alkalmazásfeladatainak végrehajtására.

Ez a cikk:

  • Bemutatja, hogyan regisztrálhat alkalmazásokat a Microsoft Graph API és a vonatkozó engedélyszerepkörökhöz való hozzáféréssel.

  • Az Intune API engedélyszerepköreinek ismertetése.

  • Intune API-hitelesítési példákat biztosít a C# és a PowerShell használatához.

  • Ismerteti, hogyan támogathat több bérlőt.

További információt az alábbi témakörökben találhat:

Alkalmazások regisztrálása a Microsoft Graph API használatához

Alkalmazás regisztrálása a Microsoft Graph API használatára:

  1. Jelentkezzen be a Microsoft Intune Felügyeleti központba rendszergazdai hitelesítő adatokkal.

    Adott esetben a következő lehetőségeket használhatja:

    • A bérlői rendszergazdai fiók.
    • Egy bérlői felhasználói fiók, amelyen engedélyezve van a Felhasználók alkalmazásregisztráció beállítása.
  2. Válassza a Minden szolgáltatás>M365 Microsoft Entra ID>Microsoft Entra ID>Alkalmazásregisztrációk lehetőséget.

    A Alkalmazásregisztrációk menü parancsa
  3. Új alkalmazás létrehozásához válassza az Új regisztráció lehetőséget, vagy válasszon egy meglévő alkalmazást. (Ha egy meglévő alkalmazást választ, hagyja ki a következő lépést.)

  4. Az Alkalmazás regisztrálása panelen adja meg a következőket:

  5. Az alkalmazáspanelen:

    1. Jegyezze fel az alkalmazás (ügyfél) azonosítójának értékét.

    2. Válassza az API-engedélyek lehetőséget.

  6. Az API-engedélyek panelen válassza az Engedély> hozzáadásaMicrosoft API-k>Microsoft Graph lehetőséget. Ezután válassza ki az alkalmazás által igényelt engedélyek típusát.

    Válassza ki az alkalmazáshoz szükséges szerepköröket úgy, hogy a megfelelő nevek mellett egy pipát helyez el. Az Egyes Intune-engedélyhatókörökről az Intune engedélyhatóköreit ismertető cikkben olvashat. Az egyéb Graph API engedélyhatókörökről további információt a Microsoft Graph engedélyeinek referenciája című témakörben talál.

    A legjobb eredmény érdekében válassza ki az alkalmazás implementálásához szükséges legkevesebb szerepkört.

Adattárház- és jelentéskészítési engedélyek

Amikor az Microsoft Entra felügyeleti központ keresztül ad hozzá egy alkalmazást, az alkalmazás követelményeinek megfelelően kiválaszthatja az Intune API-engedélyeket.

Partnermegoldási API-k

Az alkalmazások Microsoft Entra felügyeleti központ keresztüli hozzáadásakor az alábbi Intune API-engedélyek érhetők el:

  • get_device_compliance – Ez az API-engedély az eszközállapotra és a megfelelőségi adatokra szolgál Microsoft Intune. Ezt az API-engedélyt a Hálózati Access Control-partnerek használják. További információ: Hálózati Access Control integrálása az Intune-nal.
  • manage_partner_compliance_policy – Ez az API-engedély a partnermegfelelőségi szabályzatok kezelésére szolgál Microsoft Intune. Ez az API-engedély lehetővé teszi, hogy az alkalmazás bejelentkezett felhasználó nélkül küldjön partnermegfelelőségi szabályzatokat és Microsoft Entra csoport-hozzárendelést Microsoft Intune. Az eszközmegfelelési partnerek használják. További információ: Külső eszközmegfelelési partnerek.
  • pfx_cert_provider – Ezzel az API-engedéllyel PFX-tanúsítványokat küldhet az Intune-nak egy adott felhasználó számára. Az Intune a felhasználó által regisztrált összes eszközre kézbesíti a tanúsítványt. További információ: PFX Import PowerShell.
  • scep_challenge_provider – Ez az API-engedély arra szolgál, hogy SCEP-kihívásokat küldjön az Intune-nak a tanúsítványkérelmek érvényesítéséhez. A hitelesítésszolgáltatói partnerek használják. További információ: Partnerhitelesítő szolgáltató.
  • update_device_attributes – Ez az API-engedély arra szolgál, hogy eszközadatokat küldjön az Intune-nak az eszközmegfelelőségi és a mobilfenyegetés-védelmi partnerektől. További információ: A Mobile Threat Defense integrálása az Intune-nal és külső eszközmegfelelési partnerekkel.
  • update_device_health – Ez az API-engedély arra szolgál, hogy eszközállapot- és fenyegetésállapot-információkat küldjön az Intune-nak a mobilfenyegetés-védelmi partnerektől. További információ: A Mobile Threat Defense integrálása az Intune-nal.

Ha Ön ezen API-engedélyek használatával szeretne integrálni az Intune-nal, további információért forduljon a Microsoft Intelligent Security Association] csapatához.

Ha végzett, válassza az Engedélyek hozzáadása lehetőséget a módosítások mentéséhez.

Ezen a ponton a következőket is teheti:

  • Válassza ki, hogy az összes bérlői fiók számára engedélyezi az alkalmazás használatát hitelesítő adatok megadása nélkül.

    Ehhez engedélyeket adhat meg, és elfogadhatja a megerősítési kérést.

    Amikor első alkalommal futtatja az alkalmazást, a rendszer kérni fogja, hogy adjon engedélyt az alkalmazásnak a kiválasztott szerepkörök végrehajtásához.

  • Tegye elérhetővé az alkalmazást a bérlőn kívüli felhasználók számára. (Ez általában csak a több bérlőt/szervezetet támogató partnerek esetében szükséges.)

    Teendők:

    1. Válassza a Jegyzékfájl elemet az alkalmazáspanelen.

      A Jegyzékfájl szerkesztése panel
    2. Módosítsa a beállítás értékét értékre availableToOtherTenantstrue.

    3. Mentse a módosításokat.

Alkalmazáslista

Ha nagy mennyiségű adatot kap az alkalmazáslista Graph API használatakor való lekérése közben, előfordulhat, hogy a Szolgáltatás nem érhető el 503-at jelző hibaüzenet jelenik meg. Javasoljuk, hogy próbálkozzon újra kisebb oldalmérettel, például 20 vagy kevesebb elemmel.

Intune-engedélyhatókörök

Microsoft Entra ID és a Microsoft Graph engedélyhatóköröket használ a vállalati erőforrásokhoz való hozzáférés szabályozásához.

Az engedélyhatókörök (más néven OAuth-hatókörök) adott Intune-entitásokhoz és tulajdonságaikhoz való hozzáférést szabályozzák. Ez a szakasz az Intune API-funkciók engedélyhatóköreit foglalja össze.

További információ:

Amikor engedélyt ad a Microsoft Graphnak, a következő hatóköröket adhatja meg az Intune-funkciókhoz való hozzáférés szabályozásához: Az alábbi táblázat összefoglalja az Intune API engedélyhatóköreit. Az első oszlopban a szolgáltatás neve látható a Microsoft Intune Felügyeleti központban, a második oszlopban pedig az engedélyhatókör neve látható.

Hozzáférés engedélyezése beállítás Hatókör neve
Felhasználót érintő távoli műveletek végrehajtása Microsoft Intune eszközökön DeviceManagementManagedDevices.PrivilegedOperations.All
Microsoft Intune-eszközök olvasása és írása DeviceManagementManagedDevices.ReadWrite.All
Microsoft Intune-eszközök olvasása DeviceManagementManagedDevices.Read.All
Olvasási és írási Microsoft Intune RBAC-beállítások DeviceManagementRBAC.ReadWrite.All
Microsoft Intune RBAC-beállítások olvasása DeviceManagementRBAC.Read.All
Alkalmazások olvasása és írása Microsoft Intune DeviceManagementApps.ReadWrite.All
Microsoft Intune-alkalmazások olvasása DeviceManagementApps.Read.All
Olvasási és írási Microsoft Intune eszközkonfiguráció és -szabályzatok DeviceManagementConfiguration.ReadWrite.All
Microsoft Intune eszközkonfiguráció és -szabályzatok olvasása DeviceManagementConfiguration.Read.All
Olvasási és írási Microsoft Intune konfiguráció DeviceManagementServiceConfig.ReadWrite.All
Microsoft Intune konfiguráció olvasása DeviceManagementServiceConfig.Read.All

A táblázat a Microsoft Intune Felügyeleti központban megjelenő beállításokat sorolja fel. A következő szakaszok betűrendben ismertetik a hatóköröket.

Jelenleg minden Intune-engedélyhatókörnek rendszergazdai hozzáférésre van szüksége. Ez azt jelenti, hogy az Intune API-erőforrásokhoz hozzáférő alkalmazások vagy szkriptek futtatásakor megfelelő hitelesítő adatokra van szükség.

DeviceManagementApps.Read.All

  • Hozzáférés engedélyezése beállítás: Microsoft Intune-alkalmazások olvasása

  • Olvasási hozzáférést engedélyez a következő entitástulajdonságokhoz és -állapotokhoz:

    • Ügyfélalkalmazások
    • Mobilalkalmazás-kategóriák
    • Alkalmazásvédelmi szabályzatok
    • Alkalmazáskonfigurációk

DeviceManagementApps.ReadWrite.All

  • Hozzáférés engedélyezése beállítás: Microsoft Intune alkalmazások olvasása és írása

  • Engedélyezi ugyanazokat a műveleteket, mint a DeviceManagementApps.Read.All

  • A következő entitások módosítását is engedélyezi:

    • Ügyfélalkalmazások
    • Mobilalkalmazás-kategóriák
    • Alkalmazásvédelmi szabályzatok
    • Alkalmazáskonfigurációk

DeviceManagementConfiguration.Read.All

  • Hozzáférés engedélyezése beállítás: Olvasási Microsoft Intune eszközkonfiguráció és -szabályzatok

  • Olvasási hozzáférést engedélyez a következő entitástulajdonságokhoz és -állapotokhoz:

    • Eszközkonfiguráció
    • Eszközmegfelelési szabályzat
    • Értesítési üzenetek

DeviceManagementConfiguration.ReadWrite.All

  • Hozzáférés engedélyezése beállítás: Olvasási és írási Microsoft Intune eszközkonfiguráció és -szabályzatok

  • Ugyanazokat a műveleteket engedélyezi, mint a DeviceManagementConfiguration.Read.All

  • Az alkalmazások a következő entitásokat is létrehozhatják, hozzárendelhetik, törölhetik és módosíthatják:

    • Eszközkonfiguráció
    • Eszközmegfelelési szabályzat
    • Értesítési üzenetek

DeviceManagementManagedDevices.PrivilegedOperations.All

  • Hozzáférés engedélyezése beállítás: Felhasználót érintő távoli műveletek végrehajtása Microsoft Intune eszközökön

  • Engedélyezi a következő távoli műveleteket egy felügyelt eszközön:

    • Kivonás
    • Törlés
    • PIN-kód alaphelyzetbe állítása/helyreállítása
    • Távoli zárolás
    • Elveszett mód engedélyezése/letiltása
    • Számítógép tisztítása
    • Újraindít
    • Felhasználó törlése megosztott eszközről

DeviceManagementManagedDevices.Read.All

  • Hozzáférés engedélyezése beállítás: Microsoft Intune-eszközök olvasása

  • Olvasási hozzáférést engedélyez a következő entitástulajdonságokhoz és -állapotokhoz:

    • Felügyelt eszköz
    • Eszközkategória
    • Észlelt alkalmazás
    • Távoli műveletek
    • Kártevőkre vonatkozó információk

DeviceManagementManagedDevices.ReadWrite.All

  • Hozzáférés engedélyezése beállítás: Olvasási és írási Microsoft Intune eszközök

  • Ugyanazokat a műveleteket engedélyezi, mint a DeviceManagementManagedDevices.Read.All

  • Az alkalmazások a következő entitásokat is létrehozhatják, törölhetik és módosíthatják:

    • Felügyelt eszköz
    • Eszközkategória
  • A következő távoli műveletek is engedélyezettek:

    • Eszközök megkeresése
    • Aktiválási zár letiltása
    • Távsegítség kérése

DeviceManagementRBAC.Read.All

  • Hozzáférés engedélyezése beállítás: Az RBAC-beállítások olvasása Microsoft Intune

  • Olvasási hozzáférést engedélyez a következő entitástulajdonságokhoz és -állapotokhoz:

    • Szerepkör-hozzárendelések
    • Szerepkör-definíciók
    • Erőforrás-műveletek

DeviceManagementRBAC.ReadWrite.All

  • Hozzáférés engedélyezése beállítás: Olvasási és írási Microsoft Intune RBAC-beállítások

  • Engedélyezi ugyanazokat a műveleteket, mint a DeviceManagementRBAC.Read.All

  • Az alkalmazások a következő entitásokat is létrehozhatják, hozzárendelhetik, törölhetik és módosíthatják:

    • Szerepkör-hozzárendelések
    • Szerepkör-definíciók

DeviceManagementServiceConfig.Read.All

  • Hozzáférés engedélyezése beállítás: Olvasási Microsoft Intune konfiguráció

  • Olvasási hozzáférést engedélyez a következő entitástulajdonságokhoz és -állapotokhoz:

    • Eszközregisztráció
    • Apple Push Notification-tanúsítvány
    • Apple Készülékregisztrációs program
    • Apple Volume Purchase Program
    • Exchange-összekötő
    • Feltételek és kikötések
    • Cloud PKI
    • Branding
    • Mobilfenyegetés-védelem

DeviceManagementServiceConfig.ReadWrite.All

  • Hozzáférés engedélyezése beállítás: Olvasási és írási Microsoft Intune konfiguráció

  • Ugyanazokat a műveleteket engedélyezi, mint a DeviceManagementServiceConfig.Read.All_

  • Az alkalmazások a következő Intune-funkciókat is konfigurálhatják:

    • Eszközregisztráció
    • Apple Push Notification-tanúsítvány
    • Apple Készülékregisztrációs program
    • Apple Volume Purchase Program
    • Exchange-összekötő
    • Feltételek és kikötések
    • Cloud PKI
    • Branding
    • Mobilfenyegetés-védelem

példák Microsoft Entra hitelesítésre

Ez a szakasz bemutatja, hogyan építhet be Microsoft Entra ID A C# és a PowerShell-projektekbe.

Minden példában meg kell adnia egy alkalmazásazonosítót, amely legalább az DeviceManagementManagedDevices.Read.All engedélyhatókörrel rendelkezik (a korábban tárgyalt).

Bármelyik példa tesztelése során a következőhöz hasonló 403-ás (Tiltott) HTTP-állapothibák jelenhetnek meg:

{
  "error": {
    "code": "Forbidden",
    "message": "Application is not authorized to perform this operation - Operation ID " +
       "(for customer support): 00000000-0000-0000-0000-000000000000 - " +
       "Activity ID: cc7fa3b3-bb25-420b-bfb2-1498e598ba43 - " +
       "Url: https://example.manage.microsoft.com/" +
       "Service/Resource/RESTendpoint?" +
       "api-version=2017-03-06 - CustomApiErrorPhrase: ",
    "innerError": {
      "request-id": "00000000-0000-0000-0000-000000000000",
      "date": "1980-01-0112:00:00"
    }
  }
}

Ha ez történik, ellenőrizze a következőket:

  • Frissítette az alkalmazásazonosítót egy olyanra, amely jogosult a Microsoft Graph API és az engedély hatókörének DeviceManagementManagedDevices.Read.All használatára.

  • A bérlői hitelesítő adatok támogatják a felügyeleti funkciókat.

  • A kód hasonló a megjelenített mintákhoz.

Microsoft Entra ID hitelesítése c nyelven#

Ez a példa bemutatja, hogyan használható a C# az Intune-fiókjához társított eszközök listájának lekérésére.

Megjegyzés:

Azure AD Graph API a kivezetési fázisban van. További információ: Alkalmazások frissítése a Microsoft Authentication Library (MSAL) és a Microsoft Graph API használatára.

  1. Indítsa el a Visual Studiót, majd hozzon létre egy új Visual C#-konzolalkalmazást (.NET-keretrendszer).

  2. Adja meg a projekt nevét, és igény szerint adja meg az egyéb adatokat.

    C#-konzolalkalmazás-projekt létrehozása a Visual Studióban
  3. A Megoldáskezelő segítségével adja hozzá a Microsoft MSAL NuGet-csomagot a projekthez:

    1. Kattintson a jobb gombbal a Megoldáskezelő.
    2. Válassza a NuGet-csomagok kezelése... lehetőséget.>Tallózás gombra.
    3. Válassza a elemet Microsoft.Identity.Client , majd válassza a Telepítés lehetőséget.
  4. Adja hozzá a következő utasításokat a Program.cs elejéhez:

    using Microsoft.Identity.Client;
    using System.Net.Http;
    
  5. Adjon hozzá egy metódust az engedélyezési fejléc létrehozásához:

    private static async Task<string> GetAuthorizationHeader()
    {
        string applicationId = "<Your Application ID>";
        string authority = "https://login.microsoftonline.com/common/";
        Uri redirectUri = new Uri("urn:ietf:wg:oauth:2.0:oob");
        AuthenticationContext context = new AuthenticationContext(authority);
        AuthenticationResult result = await context.AcquireTokenAsync(
            "https://graph.microsoft.com",
            applicationId, redirectUri,
            new PlatformParameters(PromptBehavior.Auto));
        return result.CreateAuthorizationHeader();
    

    Ne felejtse el módosítani a értékét application_ID úgy, hogy az megegyezzon egy legalább az DeviceManagementManagedDevices.Read.All engedélyhatókörrel megadott értékkel, a korábban leírtak szerint.

  6. Adjon hozzá egy metódust az eszközök listájának lekéréséhez:

    private static async Task<string> GetMyManagedDevices()
    {
        string authHeader = await GetAuthorizationHeader();
        HttpClient graphClient = new HttpClient();
        graphClient.DefaultRequestHeaders.Add("Authorization", authHeader);
        return await graphClient.GetStringAsync(
            "https://graph.microsoft.com/beta/me/managedDevices");
    }
    
  7. Frissítse a Maint a GetMyManagedDevices hívásához:

    string devices = GetMyManagedDevices().GetAwaiter().GetResult();
    Console.WriteLine(devices);
    
  8. Fordítsa le és futtassa a programot.

A program első futtatásakor két üzenet jelenik meg. Az első a hitelesítő adatokat kéri, a második pedig engedélyeket ad a managedDevices kéréshez.

Referenciaként tekintse meg a befejezett programot:

using Microsoft.Identity.Client;
using System;
using System.Net.Http;
using System.Threading.Tasks;

namespace IntuneGraphExample
{
    class Program
    {
        static void Main(string[] args)
        {
            string devices = GetMyManagedDevices().GetAwaiter().GetResult();
            Console.WriteLine(devices);
        }

        private static async Task<string> GetAuthorizationHeader()
        {
            string applicationId = "<Your Application ID>";
            string authority = "https://login.microsoftonline.com/common/";
            Uri redirectUri = new Uri("urn:ietf:wg:oauth:2.0:oob");
            AuthenticationContext context = new AuthenticationContext(authority);
            AuthenticationResult result = await context.AcquireTokenAsync("https://graph.microsoft.com", applicationId, redirectUri, new PlatformParameters(PromptBehavior.Auto));
            return result.CreateAuthorizationHeader();
        }

        private static async Task<string> GetMyManagedDevices()
        {
            string authHeader = await GetAuthorizationHeader();
            HttpClient graphClient = new HttpClient();
            graphClient.DefaultRequestHeaders.Add("Authorization", authHeader);
            return await graphClient.GetStringAsync("https://graph.microsoft.com/beta/me/managedDevices");
        }
    }
}

Microsoft Entra ID hitelesítése a Microsoft Graph PowerShell használatával

A PowerShell-szkriptek a Microsoft Graph PowerShell-modult használhatják a hitelesítéshez. További információ: Microsoft Graph PowerShell és az Intune PowerShell-példák.

Több bérlő és partner támogatása

Ha a szervezete támogatja a saját Microsoft Entra-bérlőkkel rendelkező szervezeteket, célszerű engedélyeznie az ügyfeleknek, hogy az alkalmazást a megfelelő bérlőkkel használják.

Teendők:

  1. Ellenőrizze, hogy az ügyfélfiók létezik-e a cél Microsoft Entra bérlőben.

  2. Ellenőrizze, hogy a bérlői fiókja engedélyezi-e a felhasználóknak az alkalmazások regisztrálását (lásd : Felhasználói beállítások).

  3. Hozzon létre kapcsolatot az egyes bérlők között.

    Ehhez tegye a következők egyikét:

    a. A Microsoft Partnerközponttal kapcsolatot határozhat meg az ügyféllel és az e-mail-címükkel.

    b. Hívja meg a felhasználót, hogy legyen a bérlő vendége.

A felhasználó meghívása a bérlő vendégének:

  1. A Gyorsműveletek panelen válassza a Vendégfelhasználó hozzáadása lehetőséget.

    Vendégfelhasználó hozzáadása gyorsműveletek használatával
  2. Adja meg az ügyfél e-mail-címét, és (opcionálisan) adjon hozzá egy személyre szabott üzenetet a meghíváshoz.

    Külső felhasználó meghívása vendégként
  3. Válassza a Meghívás lehetőséget.

Ez meghívót küld a felhasználónak.

Minta vendégmeghívó

A felhasználónak az Első lépések hivatkozást kell választania a meghívás elfogadásához.

A kapcsolat létrejöttekor (vagy a meghívás elfogadásakor) adja hozzá a felhasználói fiókot a Címtár szerepkörhöz.

Ne felejtse el szükség szerint hozzáadni a felhasználót más szerepkörökhöz. Ahhoz például, hogy a felhasználó kezelhesse az Intune beállításait, globális rendszergazdának vagy Intune-szolgáltatás-rendszergazdának kell lennie.

Is:

  • Intune-licenc https://admin.microsoft.com hozzárendelése a felhasználói fiókhoz.

  • Frissítse az alkalmazáskódot az ügyfél Microsoft Entra bérlői tartományának hitelesítéséhez a sajátja helyett.

    Tegyük fel például, hogy a bérlő tartománya contosopartner.onmicrosoft.com és az ügyfél bérlői tartománya northwind.onmicrosoft.com, frissítené a kódot, hogy hitelesítse magát az ügyfél bérlőjében.

    Ehhez egy C#-alkalmazásban a korábbi példa alapján módosítania kell a authority változó értékét:

    string authority = "https://login.microsoftonline.com/common/";
    

    a

    string authority = "https://login.microsoftonline.com/northwind.onmicrosoft.com/";