Inside Story, c’est des séries d’articles dédiés à mes expériences terrain lors de projets menés chez les clients chez qui j’interviens !
Ce premier volet d’une série dédiée vous plonge dans les coulisses de la création d’un tableau de bord avancé, en combinant la puissance de Power BI et la flexibilité de Microsoft Graph API. Objectif : transformer vos données Intune en insights exploitables, pour une prise de décision éclairée et agile 🙂
Dans cette partie 1, nous verrons :
- Les objectifs et les enjeux liés à la mise en place de ce reporting
- Les ressources nécessaires pour exploiter, récupérer et stocker les données venant de la graph API Microsoft Intune
Le contexte :
Nous venons de terminer la migration de Workspace One vers notre nouveau MDM Microsoft Intune pour les postes de travail Windows.
Sous Workspace One, des dashboards personnalisés avaient été crées, l’idée était d’offrir le même niveau de service après notre migration vers Microsoft Intune en créant ce même type de dashboard.
Les objectifs :
•Offrir un niveau de service et de détail équivalent pour les personnes exploitant les précédents rapports provenant de Workspace One.
•Donner une vue unifiée de tous les terminaux (Windows), leur conformité, leur état de sécurité et leur configuration ainsi que leur niveau de mise à jour Windows par pays.
•Fournir des indicateurs décisionnels clairs aux responsables IT, à la sécurité.
•Eviter les accès à la console d’administration.
Les questions à se poser avant de démarrer :
- La première question est essentielle : Qu’est-ce qu’on veut afficher et à qui ? Il faudra inclure les parties prenantes dans vos ateliers de construction.
- La deuxième question : Comment récupérer et stocker les données ? On peut parler ici d’Azure Automation et d’Azure Blob Storage.
- La troisième question : Comment afficher les données ? Le dashboard doit être intuitif.
Les ressources nécessaires et utilisées dans le cadre de ce projet :
Pour automatiser la collecte, le stockage et l’exploitation des données provenant de la Graph API Intune dans Power BI, j’ai mis en place (après approbation des architectes technique et de la RSSI) une architecture basée sur plusieurs services Azure :
Azure Automation, Azure Blob Storage, Azure Key Vault, et une System Managed Identity.

1. Azure Automation – Orchestration des appels à l’API Graph
Azure Automation permet d’exécuter automatiquement des scripts PowerShell dans le cloud. Il est utilisé ici pour :
- Interroger périodiquement Microsoft Graph API (Intune) afin d’extraire des données comme les appareils, les configurations, ou la conformité.
- Générer des fichiers structurés (JSON, CSV) exploitables par Power BI.
- Transférer ces fichiers dans un conteneur Azure Blob Storage.
C’est l’élément moteur du pipeline d’extraction.
2. Azure Blob Storage – Stockage des données brutes pour Power BI
Les données extraites via l’API sont stockées dans Azure Blob Storage :
- Power BI peut se connecter directement au conteneur pour lire les fichiers.
- Il permet de centraliser et historiser les données brutes.
- Il est hautement scalable et économique.
Power BI accède au stockage via une clé d’accès (Storage Account Key)
3. Azure Key Vault – Sécurisation de la clé d’accès pour Power BI
Azure Key Vault est utilisé pour stocker et sécuriser la clé d’accès du Storage Account, qui est utilisée côté Power BI pour se connecter au conteneur Blob :
- La clé est gérée de façon centralisée et sécurisée, avec rotation possible.
- On contrôle précisément qui peut accéder à la clé.
Cela permet de respecter les bonnes pratiques de sécurité cloud, notamment le principe du moindre privilège.
4. Managed Identity – Authentification sécurisée pour Azure Automation
Azure Automation utilise une identité managée (Managed Identity) pour s’authentifier :
- Auprès de Microsoft Graph API (via des autorisations comme
Device.Read.All,ManagedDevice.Read.All, etc.). - Auprès d’Azure Blob Storage, en configurant un accès via RBAC. (Storage Blob Data Contributor)
- Auprès d’Azure Key Vault, si la clé d’accès au stockage devait aussi être utilisée côté script (facultatif).
Cette méthode élimine les secrets codés en dur et renforce la sécurité de l’environnement d’automatisation.
En combinant tout ces éléments, on obtient une solution d’extraction et de stockage des données provenant de la graph API Microsoft Intune sécurisée et automatisée.
Cette approche permet de centraliser la collecte des données, de fiabiliser les mises à jour grâce à l’automatisation, et d’offrir aux équipes IT une visibilité claire sur l’état du parc via Power BI.
L’utilisation de la Managed Identity supprime la gestion des identifiants sensibles, ce qui renforce la sécurité et simplifie l’administration.
Enfin, cette architecture reste flexible et peut être enrichie pour intégrer d’autres sources de données (Defender, Entra ID, Azure AD Logs) ou s’inscrire dans une stratégie plus large de gouvernance et de supervision.
En résumé, c’est une solution qui allie simplicité, scalabilité et sécurité pour transformer les données Intune en insights exploitables dans PowerBI.
Dans la partie 2 de cette série d’article, nous verrons la construction des runbooks Azure Automation vers Azure Blob Storage avec des exemples de scripts.