Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
L’API Graph Microsoft prend désormais en charge Microsoft Intune avec des API et des rôles d’autorisation spécifiques. L’API Graph Microsoft utilise Microsoft Entra ID pour l’authentification et le contrôle d’accès. L’accès aux API Intune dans Microsoft Graph nécessite :
Un ID d’application avec :
- Autorisation d’appeler Microsoft Entra ID et les API Microsoft Graph.
- Les étendues d’autorisation pertinentes pour les tâches spécifiques de l’application.
Informations d'identification d'utilisateur avec :
- Autorisation d’accéder au locataire Microsoft Entra associé à l’application.
- Les autorisations de rôle requises pour prendre en charge les étendues d’autorisation de l’application.
L’utilisateur final doit accorder à l’application l’autorisation d’effectuer des tâches d’application pour son locataire Azure.
Cet article :
Montre comment inscrire une application ayant accès à l’API Graph Microsoft et aux rôles d’autorisation appropriés.
Décrit les rôles d’autorisation de l’API Intune.
Fournit des exemples d’authentification de l’API Intune pour C# et PowerShell.
Décrit comment prendre en charge plusieurs locataires.
Pour en savoir plus, reportez-vous à la rubrique :
- Autoriser l’accès aux applications web à l’aide d’OAuth 2.0 et de Microsoft Entra ID
- Prise en main de l’authentification Microsoft Entra
- Intégration d’applications avec Microsoft Entra ID
- Comprendre OAuth 2.0
Inscrire des applications pour utiliser l’API Microsoft Graph
Pour inscrire une application pour qu’elle utilise l’API Microsoft Graph :
Connectez-vous au centre d’administration Microsoft Entra à l’aide d’informations d’identification administratives.
Selon le cas, vous pouvez utiliser :
- Le compte d’administrateur du client.
- Un compte d’utilisateur client avec le paramètre Les utilisateurs peuvent inscrire des applications activé.
Dans le Centre d’administration, développez Applications d’identité>, puis sélectionnez Inscriptions d’applications.
Choisissez Nouvelle inscription pour créer une application ou choisissez une application existante. (Si vous choisissez une application existante, ignorez l’étape suivante.)
Dans le volet Enregistrer une application , spécifiez les éléments suivants :
Nom pour l’application (affiché lorsque les utilisateurs se connectent).
Type de compte pris en charge.
Valeur d’URI de redirection . Cette valeur est facultative.
Remarque
L’API Azure AD Graph est en phase de mise hors service. Pour plus d’informations, consultez Mettre à jour vos applications afin d’utiliser la bibliothèque d’authentification Microsoft (MSAL) et l’API Microsoft Graph.
Pour en savoir plus, consultez Scénarios d’authentification pour Microsoft Entra ID.
Sélectionnez S’inscrire pour ajouter votre nouvelle application.
En sélectionnant S’inscrire, vous acceptez les stratégies de la plateforme Microsoft.
Dans le volet d’application de votre application :
Notez la valeur de l’ID d’application (client).
Puis, dans le menu de navigation, sélectionnez Autorisations API.
Dans le volet Autorisations de l’API :
Sélectionnez Ajouter une autorisation, puis sous l’onglet API Microsoft , sélectionnez la vignette Microsoft Graph .
Sélectionnez l’option Autorisations d’application pour afficher toutes les autorisations disponibles, puis sélectionnez le type d’autorisations requis par votre application.
Choisissez les rôles requis pour votre application en cochant à gauche des noms appropriés. Pour en savoir plus sur les étendues d’autorisation Intune spécifiques, consultez Étendues d’autorisation Intune. Pour en savoir plus sur les autres étendues d’autorisations de l’API Graph, consultez Référence des autorisations Microsoft Graph.
Pour de meilleurs résultats, choisissez le minimum de rôles nécessaires pour implémenter votre application.
Autorisations d’entrepôt de données et de création de rapports
Lorsque vous ajoutez une application via le centre d’administration Microsoft Entra, vous pouvez choisir les autorisations de l’API Intune en fonction des exigences de votre application.
- get_data_warehouse : utilisez cette autorisation d’API pour accorder l’accès à l’API de l’entrepôt de données Intune à partir de Microsoft Intune. Pour plus d’informations, voir Utilisation de la Microsoft Intune Data Warehouse.
API de solution partenaire
Les autorisations d’API Intune suivantes sont disponibles lors de l’ajout d’une application via le centre d’administration Microsoft Entra :
- get_device_compliance : cette autorisation d’API est utilisée pour obtenir des informations sur l’état et la conformité de l’appareil à partir de Microsoft Intune. Cette autorisation d’API est utilisée par les partenaires de Network Access Control. Pour plus d’informations, consultez Intégration de Network Access Control à Intune.
- manage_partner_compliance_policy : cette autorisation d’API est utilisée pour gérer les stratégies de conformité des partenaires avec Microsoft Intune. Cette autorisation d’API permet à l’application d’envoyer des stratégies de conformité de partenaire et son affectation de groupe Microsoft Entra à Microsoft Intune sans utilisateur connecté. Il est utilisé par les partenaires de conformité des appareils. Pour plus d’informations, consultez Partenaires tiers de conformité des appareils.
- pfx_cert_provider : cette autorisation d’API est utilisée pour envoyer des certificats PFX à Intune pour un utilisateur spécifique. Intune fournit le certificat à tous les appareils inscrits par l’utilisateur. Pour plus d’informations, consultez PFX Import Powershell.
- scep_challenge_provider : cette autorisation d’API est utilisée pour envoyer des défis SCEP à Intune pour la validation d’une demande de certificat. Il est utilisé par les partenaires de l’autorité de certification. Pour plus d’informations, voir Autorité de certification du partenaire.
- update_device_attributes : cette autorisation d’API est utilisée pour envoyer des informations sur les appareils aux Intune des partenaires de conformité des appareils et de défense contre les menaces mobiles. Pour plus d’informations, consultez Intégration de Mobile Threat Defense avec Intune et les partenaires de conformité des appareils tiers.
- update_device_health : cette autorisation d’API est utilisée pour envoyer des informations sur l’intégrité de l’appareil et la status des menaces aux Intune des partenaires de défense contre les menaces mobiles. Pour plus d’informations, consultez Intégration de Mobile Threat Defense avec Intune.
Si vous êtes un partenaire intéressé par l’intégration avec Intune à l’aide de ces autorisations d’API, contactez l’équipe Association de sécurité intelligente de Microsoft] pour plus d’informations.
Lorsque vous avez terminé, choisissez Ajouter des autorisations pour enregistrer vos modifications.
À ce stade, vous pouvez également :
Choisissez d’accorder à tous les comptes clients l’autorisation d’utiliser l’application sans fournir d’informations d’identification.
Pour ce faire, vous pouvez accorder des autorisations et accepter l’invite de confirmation.
Lorsque vous exécutez l’application pour la première fois, vous êtes invité à accorder à l’application l’autorisation d’exécuter les rôles sélectionnés.
Rendre l’application disponible pour les utilisateurs en dehors de votre client. (Cette option n’est généralement requise que pour les partenaires qui prennent en charge plusieurs locataires/organisations.)
Pour ce faire, procédez comme suit :
Sélectionnez Manifest (Manifest ) dans le volet de l’application.
Remplacez la valeur du
availableToOtherTenantsparamètre partrue.Enregistrez vos modifications.
Liste des applications
Si vous recevez une grande quantité de données lors de la demande de votre liste d’applications lors de l’utilisation de l’API Graph, vous pouvez rencontrer une erreur 503 Service indisponible. Nous vous recommandons de réessayer avec une taille de page plus petite, par exemple 20 éléments ou moins.
Étendues des autorisations Intune
Microsoft Entra ID et Microsoft Graph utilisent des étendues d’autorisation pour contrôler l’accès aux ressources de l’entreprise.
Les étendues d’autorisation (également appelées étendues OAuth) contrôlent l’accès à des entités Intune spécifiques et à leurs propriétés. Cette section récapitule les étendues d’autorisation pour les fonctionnalités de l’API Intune.
Pour en savoir plus :
Lorsque vous accordez l’autorisation à Microsoft Graph, vous pouvez spécifier les étendues suivantes pour contrôler l’accès aux fonctionnalités d’Intune : Le tableau suivant récapitule les étendues d’autorisation de l’API Intune. La première colonne affiche le nom de la fonctionnalité tel qu’il est affiché dans le Centre d’administration Microsoft Intune et la seconde colonne fournit le nom de l’étendue d’autorisation.
| Activer le paramètre d’accès | Nom de l’étendue |
|---|---|
| Effectuer des actions à distance à fort impact sur les appareils gérés par Microsoft Intune | DeviceManagementManagedDevices.PrivilegedOperations.All |
| Accéder en lecture et en écriture aux appareils gérés par Microsoft Intune | DeviceManagementManagedDevices.ReadWrite.All |
| Accéder en lecture aux appareils gérés par Microsoft Intune | DeviceManagementManagedDevices.Read.All |
| Accéder en lecture et en écriture aux paramètres RBAC de Microsoft Intune | DeviceManagementRBAC.ReadWrite.All |
| Accéder en lecture aux paramètres RBAC de Microsoft Intune | DeviceManagementRBAC.Read.All |
| Lire les scripts de Microsoft Intune | DeviceManagementScripts.Read.All |
| Lire et écrire des scripts Microsoft Intune | DeviceManagementScripts.ReadWrite.All |
| Accéder en lecture et en écriture aux applications gérées par Microsoft Intune | DeviceManagementApps.ReadWrite.All |
| Accéder en lecture aux applications Microsoft Intune | DeviceManagementApps.Read.All |
| Lecture et écriture Configuration et stratégies d’appareils Microsoft Intune | DeviceManagementConfiguration.ReadWrite.All |
| Lire les stratégies et configuration des appareils Microsoft Intune | DeviceManagementConfiguration.Read.All |
| Accéder en lecture et en écriture à la configuration de Microsoft Intune | DeviceManagementServiceConfig.ReadWrite.All |
| Accéder en lecture à la configuration de Microsoft Intune | DeviceManagementServiceConfig.Read.All |
Le tableau répertorie les paramètres tels qu’ils apparaissent dans le Centre d’administration Microsoft Intune. Les sections suivantes décrivent les étendues par ordre alphabétique.
Pour l’instant, toutes les étendues d’autorisation Intune nécessitent un accès administrateur. Cela signifie que vous avez besoin d’informations d’identification correspondantes lors de l’exécution d’applications ou de scripts qui accèdent aux ressources de l’API Intune.
DeviceManagementApps.Read.All
Activer le paramètre d’accès : Lire les applications Microsoft Intune
Autorise l’accès en lecture aux propriétés et à l’état d’entité suivants :
- Applications clientes
- Catégories d’applications mobiles
- Stratégies de protection des applications
- Configurations d’application
DeviceManagementApps.ReadWrite.All
Activer le paramètre d’accès : Lire et écrire des applications Microsoft Intune
Autorise les mêmes opérations que DeviceManagementApps.Read.All
Permet également de modifier les entités suivantes :
- Applications clientes
- Catégories d’applications mobiles
- Stratégies de protection des applications
- Configurations d’application
DeviceManagementConfiguration.Read.All
Activer le paramètre d’accès : lire la configuration et les stratégies d’appareil de Microsoft Intune
Autorise l’accès en lecture aux propriétés et à l’état d’entité suivants :
- Configuration de l’appareil
- Stratégie de conformité des appareils
- Notification Messages
Remarque
À compter du 31 juillet 2025, Microsoft Graph a remplacé l’utilisation de l’autorisation DeviceManagementConfiguration.Read.All par DeviceManagementScripts.ReadWrite.All pour les appels d’API suivants :
- ~/deviceManagement/deviceShellScripts
- ~/deviceManagement/deviceHealthScripts
- ~/deviceManagement/deviceComplianceScripts
- ~/deviceManagement/deviceCustomAttributeShellScripts
- ~/deviceManagement/deviceManagementScripts
DeviceManagementConfiguration.ReadWrite.All
Activer le paramètre d’accès : Lecture/écriture Configuration et stratégies d’appareils Microsoft Intune
Autorise les mêmes opérations que DeviceManagementConfiguration.Read.All
Les applications peuvent également créer, affecter, supprimer et modifier les entités suivantes :
- Configuration de l’appareil
- Stratégie de conformité des appareils
- Notification Messages
Remarque
À compter du 31 juillet 2025, Microsoft Graph a remplacé l’utilisation de l’autorisation DeviceManagementConfiguration.ReadWrite.All par DeviceManagementScripts.ReadWrite.All pour les appels d’API suivants :
- ~/deviceManagement/deviceShellScripts
- ~/deviceManagement/deviceHealthScripts
- ~/deviceManagement/deviceComplianceScripts
- ~/deviceManagement/deviceCustomAttributeShellScripts
- ~/deviceManagement/deviceManagementScripts
DeviceManagementManagedDevices.PrivilegedOperations.All
Activer le paramètre d’accès : effectuer des actions à distance ayant un impact sur les utilisateurs sur les appareils Microsoft Intune
Autorise les actions à distance suivantes sur un appareil géré :
- Mettre hors service
- Réinitialisation
- Réinitialiser/récupérer le code secret
- Verrouillage à distance
- Activer/désactiver le mode Perdu
- Nettoyer le PC
- Redémarrer
- Supprimer un utilisateur de l’appareil partagé
DeviceManagementManagedDevices.Read.All
Activer le paramètre d’accès : lire les appareils Microsoft Intune
Autorise l’accès en lecture aux propriétés et à l’état d’entité suivants :
- Appareil géré
- Catégorie d’appareil
- Application détectée
- Actions à distance.
- Informations sur les programmes malveillants
DeviceManagementManagedDevices.ReadWrite.All
Activer le paramètre d’accès : Lecture et écriture Appareils Microsoft Intune
Autorise les mêmes opérations que DeviceManagementManagedDevices.Read.All
Les applications peuvent également créer, supprimer et modifier les entités suivantes :
- Appareil géré
- Catégorie d’appareil
Les actions à distance suivantes sont également autorisées :
- Localiser des appareils
- Désactiver le verrou d’activation
- Demander une assistance à distance
DeviceManagementRBAC.Read.All
Activer le paramètre d’accès : Lire les paramètres RBAC de Microsoft Intune
Autorise l’accès en lecture aux propriétés et à l’état d’entité suivants :
- Attributions de rôles
- Définitions de rôle
- Opérations sur les ressources
DeviceManagementRBAC.ReadWrite.All
Activer le paramètre d’accès : Lecture/écriture Paramètres RBAC de Microsoft Intune
Autorise les mêmes opérations que DeviceManagementRBAC.Read.All
Les applications peuvent également créer, affecter, supprimer et modifier les entités suivantes :
- Attributions de rôles
- Définitions de rôle
DeviceManagementScripts.Read.All
Activer le paramètre d’accès : Lire les scripts de Microsoft Intune
Les applications peuvent afficher (lire) un script, en particulier :
- Scripts d’interpréteur de commandes de l’appareil
- Scripts d’intégrité de l’appareil
- Scripts de conformité des appareils
- Script shell d’attribut personnalisé d’appareil
- Scripts de gestion des appareils
DeviceManagementScripts.ReadWrite.All
Activer le paramètre d’accès : Lire et écrire des scripts Microsoft Intune
Autorise les mêmes opérations que DeviceManagementScripts.Read.AllLes applications peuvent créer, mettre à jour ou supprimer un script, en particulier :
- Scripts d’interpréteur de commandes de l’appareil
- Scripts d’intégrité de l’appareil
- Scripts de conformité des appareils
- Script shell d’attribut personnalisé d’appareil
- Scripts de gestion des appareils
DeviceManagementServiceConfig.Read.All
Activer le paramètre d’accès : Lire la configuration de Microsoft Intune
Autorise l’accès en lecture aux propriétés et à l’état d’entité suivants :
- Inscription d’appareils
- Certificat de notification Push Apple
- Programme d’inscription des appareils Apple
- Programme d’achat en volume d’Apple
- Connecteur Exchange
- Conditions générales
- Cloud PKI
- Personnalisation
- Défense contre les menaces mobiles
DeviceManagementServiceConfig.ReadWrite.All
Activer le paramètre d’accès : Lecture/écriture Configuration de Microsoft Intune
Autorise les mêmes opérations que DeviceManagementServiceConfig.Read.All_
Les applications peuvent également configurer les fonctionnalités Intune suivantes :
- Inscription d’appareils
- Certificat de notification Push Apple
- Programme d’inscription des appareils Apple
- Programme d’achat en volume d’Apple
- Connecteur Exchange
- Conditions générales
- Cloud PKI
- Personnalisation
- Défense contre les menaces mobiles
Exemples d’authentification Microsoft Entra
Cette section montre comment incorporer Microsoft Entra ID dans vos projets C# et PowerShell.
Dans chaque exemple, vous devez spécifier un ID d’application qui a au moins l’étendue d’autorisation DeviceManagementManagedDevices.Read.All (voir précédemment).
Lorsque vous testez l’un ou l’autre de ces exemples, vous pouvez recevoir des erreurs HTTP de status 403 (Interdit) semblables à ce qui suit :
{
"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"
}
}
}
Si cela se produit, vérifiez que :
Vous avez mis à jour l’ID d’application afin qu’il soit autorisé à utiliser l’API Microsoft Graph et l’étendue de l’autorisation
DeviceManagementManagedDevices.Read.All.Vos informations d’identification de locataire prennent en charge les fonctions administratives.
Votre code est semblable aux exemples affichés.
Authentifier Microsoft Entra ID en C#
Cet exemple montre comment utiliser C# pour récupérer une liste d’appareils associés à votre compte Intune.
Remarque
L’API Azure AD Graph est en phase de mise hors service. Pour plus d’informations, consultez Mettre à jour vos applications afin d’utiliser la bibliothèque d’authentification Microsoft (MSAL) et l’API Microsoft Graph.
Démarrez Visual Studio, puis créez un nouveau projet d’application de console Visual C# (.NET Framework).
Entrez un nom pour votre projet et fournissez d’autres détails comme vous le souhaitez.
Utilisez l’Explorateur de solutions pour ajouter le package NuGet Microsoft MSAL au projet :
- Cliquez avec le bouton droit sur l’Explorateur de solutions.
- Choisissez Gérer les packages NuGet...>Parcourir.
- Sélectionnez
Microsoft.Identity.Clientpuis choisissez Installer.
Ajoutez les instructions suivantes en haut de Program.cs :
using Microsoft.Identity.Client; using System.Net.Http;Ajoutez une méthode pour créer l’en-tête d’autorisation :
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();N’oubliez pas de modifier la valeur de
application_IDpour faire correspondre au moins l’étendue de l’autorisationDeviceManagementManagedDevices.Read.All, comme décrit précédemment.Ajoutez une méthode pour récupérer la liste des appareils :
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"); }Mettez à jour le principal pour appeler GetMyManagedDevices :
string devices = GetMyManagedDevices().GetAwaiter().GetResult(); Console.WriteLine(devices);Compilez et exécutez votre programme.
Lorsque vous exécutez votre programme pour la première fois, deux invites doivent s’afficher. Le premier demande vos informations d’identification et le second accorde des autorisations pour la managedDevices demande.
Pour référence, voici le programme terminé :
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");
}
}
}
Authentifier Microsoft Entra ID à l’aide de Microsoft Graph PowerShell
Les scripts PowerShell peuvent utiliser le module PowerShell Microsoft Graph pour l’authentification. Pour en savoir plus, consultez les exemples PowerShell Microsoft Graph et PowerShell Intune.
Prendre en charge plusieurs locataires et partenaires
Si votre organisation prend en charge des organisations avec leurs propres clients Microsoft Entra, vous pouvez autoriser vos clients à utiliser votre application avec leurs clients respectifs.
Pour ce faire, procédez comme suit :
Vérifiez que le compte client existe dans le client Microsoft Entra cible.
Vérifiez que votre compte client permet aux utilisateurs d’inscrire des applications (voir Paramètres utilisateur).
Établissez une relation entre chaque locataire.
Pour ce faire, procédez comme suit :
a. Utilisez l’Espace partenaires Microsoft pour définir une relation avec votre client et son adresse e-mail.
b. Invitez l’utilisateur à devenir un invité de votre client.
Pour inviter l’utilisateur à être l’invité de votre client :
Choisissez Ajouter un utilisateur invité dans le panneau Tâches rapides .
Entrez l’adresse e-mail du client et (éventuellement) ajoutez un message personnalisé pour l’invitation.
Choisissez Inviter.
Cette opération envoie une invitation à l’utilisateur.
L’utilisateur doit choisir le lien Commencer pour accepter votre invitation.
Lorsque la relation est établie (ou que votre invitation a été acceptée), ajoutez le compte utilisateur au rôle d’annuaire.
N’oubliez pas d’ajouter l’utilisateur à d’autres rôles, le cas échéant. Par exemple, pour permettre à l’utilisateur de gérer les paramètres d’Intune, il doit être au moins un administrateur du service Intune.
En outre :
Permet https://admin.microsoft.com d’attribuer une licence Intune à votre compte d’utilisateur.
Mettez à jour le code de l’application pour vous authentifier sur le domaine client Microsoft Entra du client, plutôt que sur le vôtre.
Par exemple, supposons que votre domaine client est
contosopartner.onmicrosoft.comet que le domaine client de votre client estnorthwind.onmicrosoft.com, vous devez mettre à jour votre code pour vous authentifier auprès du client de votre client.Pour ce faire dans une application C# basée sur l’exemple précédent, vous devez modifier la valeur de la
authorityvariable :string authority = "https://login.microsoftonline.com/common/";au
string authority = "https://login.microsoftonline.com/northwind.onmicrosoft.com/";