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 a Microsoft Intune-t adott API-kkal és engedélyszerepkörökkel. A Microsoft Graph API a Microsoft Entra-azonosítót használja 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:
- Engedély a Microsoft Entra ID és a Microsoft Graph API-k meghívásához.
- 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 egy alkalmazást a Microsoft Graph API-hoz való hozzáféréssel és a megfelelő engedélyszerepkörökkel.
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:
- Webalkalmazásokhoz való hozzáférés engedélyezése az OAuth 2.0 és a Microsoft Entra ID használatával
- A Microsoft Entra-hitelesítés használatának első lépései
- Alkalmazások integrálása a Microsoft Entra-azonosítóval
- Az OAuth 2.0 ismertetése
Alkalmazások regisztrálása a Microsoft Graph API használatához
Alkalmazás regisztrálása a Microsoft Graph API használatára:
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.
Válassza a Minden szolgáltatás>M365 Microsoft Entra ID>Microsoft Entra ID>Alkalmazásregisztrációk lehetőséget.
Ú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.)
Az Alkalmazás regisztrálása panelen adja meg a következőket:
Az alkalmazás neve (a felhasználók bejelentkezésekor jelenik meg).
A támogatott fiók típusa.
Átirányítási URI-érték. Ez az érték a beállítás.
Megjegyzés:
Az 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.
További információ: Hitelesítési forgatókönyvek a Microsoft Entra-azonosítóhoz.
Az alkalmazáspanelen:
Jegyezze fel az alkalmazás (ügyfél) azonosítójának értékét.
Válassza az API-engedélyek lehetőséget.
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. További információ a Graph API engedélyhatóköreiről: Microsoft Graph-engedélyek referenciája.
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 a Microsoft Entra felügyeleti központon keresztül ad hozzá egy alkalmazást, az alkalmazás követelményeinek megfelelően kiválaszthatja az Intune API-engedélyeket.
- get_data_warehouse – Ezzel az API-engedéllyel hozzáférést adhat az Intune adattárház API-hoz a Microsoft Intune-ból. További információ: Using the Microsoft Intune Data Warehouse (A Microsoft Intune-adattárház használata).
Partnermegoldási API-k
Az alábbi Intune API-engedélyek érhetők el, amikor alkalmazásokat ad hozzá a Microsoft Entra Felügyeleti központban:
- get_device_compliance – Ez az API-engedély az eszközállapotra és a megfelelőségi adatokra szolgál a Microsoft Intune-ból. Ezt az API-engedélyt a hálózati hozzáférés-vezérlési partnerek használják. További információ: A hálózati hozzáférés-vezérlés integrálása az Intune-nal.
- manage_partner_compliance_policy – Ez az API-engedély a Microsoft Intune-nal való partnermegfelelőségi szabályzatok kezelésére szolgál. Ez az API-engedély lehetővé teszi, hogy az alkalmazás bejelentkezett felhasználó nélkül küldje el a partnermegfelelőségi szabályzatokat és a Microsoft Entra-csoport hozzárendelését a Microsoft Intune-nak. 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:
Válassza a Jegyzékfájl elemet az alkalmazáspanelen.
Módosítsa a beállítás értékét értékre
availableToOtherTenants
true
.Mentse a módosításokat.
Alkalmazáslista
Ha a Graph API használatakor nagy mennyiségű adatot kap, amikor az alkalmazáslistát kéri le, 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
A 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 |
A Microsoft Intune RBAC beállításainak olvasása és írása | DeviceManagementRBAC.ReadWrite.All |
A Microsoft Intune RBAC-beállításainak olvasása | DeviceManagementRBAC.Read.All |
Microsoft Intune-alkalmazások olvasása és írása | DeviceManagementApps.ReadWrite.All |
Microsoft Intune-alkalmazások olvasása | DeviceManagementApps.Read.All |
A Microsoft Intune-eszközkonfiguráció és -szabályzatok olvasása és írása | DeviceManagementConfiguration.ReadWrite.All |
Olvassa el a Microsoft Intune-eszközkonfiguráció és -szabályzatok című cikket | DeviceManagementConfiguration.Read.All |
A Microsoft Intune konfigurációjának olvasása és írása | DeviceManagementServiceConfig.ReadWrite.All |
A Microsoft Intune konfigurációjának 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: A Microsoft Intune eszközkonfigurációjának és szabályzatainak olvasása
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: A Microsoft Intune-eszközkonfiguráció és -szabályzatok olvasása és írása
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: Microsoft Intune-eszközök olvasása és írása
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: A Microsoft Intune RBAC-beállításainak olvasása
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: A Microsoft Intune RBAC-beállításainak olvasása és írása
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: A Microsoft Intune konfigurációjának olvasása
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
- Felhőbeli PKI
- Branding
- Mobilfenyegetés-védelem
DeviceManagementServiceConfig.ReadWrite.All
Hozzáférés engedélyezése beállítás: A Microsoft Intune konfigurációjának olvasása és írása
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
- Felhőbeli PKI
- Branding
- Mobilfenyegetés-védelem
Microsoft Entra-hitelesítési példák
Ez a szakasz bemutatja, hogyan építheti be a Microsoft Entra ID-t 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 a Microsoft Graph API és az
DeviceManagementManagedDevices.Read.All
engedélyhatókör használatára jogosultra.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-azonosító 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:
Az 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.
Indítsa el a Visual Studiót, majd hozzon létre egy új Visual C#-konzolalkalmazást (.NET-keretrendszert).
Adja meg a projekt nevét, és igény szerint adja meg az egyéb adatokat.
A Megoldáskezelővel adja hozzá a Microsoft MSAL NuGet-csomagot a projekthez:
- Kattintson a jobb gombbal a Megoldáskezelőre.
- Válassza a NuGet-csomagok kezelése... lehetőséget.>Tallózás gombra.
- Válassza a elemet
Microsoft.Identity.Client
, majd válassza a Telepítés lehetőséget.
Adja hozzá a következő utasításokat a Program.cs elejéhez:
using Microsoft.Identity.Client; using System.Net.Http;
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 azDeviceManagementManagedDevices.Read.All
engedélyhatókörrel megadott értékkel, a korábban leírtak szerint.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"); }
Frissítse a Maint a GetMyManagedDevices hívásához:
string devices = GetMyManagedDevices().GetAwaiter().GetResult(); Console.WriteLine(devices);
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");
}
}
}
A Microsoft Entra-azonosító 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, akkor célszerű engedélyeznie az ügyfeleknek, hogy az alkalmazást a megfelelő bérlőkkel használják.
Teendők:
Ellenőrizze, hogy az ügyfélfiók létezik-e a cél Microsoft Entra-bérlőben.
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).
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:
A Gyorsműveletek panelen válassza a Vendégfelhasználó hozzáadása lehetőséget.
Adja meg az ügyfél e-mail-címét, és (opcionálisan) adjon hozzá egy személyre szabott üzenetet a meghíváshoz.
Válassza a Meghívás lehetőséget.
Ez meghívót küld a felhasználónak.
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 úgy, hogy az ügyfél Microsoft Entra bérlői tartományában végezze el a hitelesítést 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ányanorthwind.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/";
hoz
string authority = "https://login.microsoftonline.com/northwind.onmicrosoft.com/";