Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Sie können über RESTful-Endpunkte auf das Intune Data Warehouse Datenmodell zugreifen. Um Zugriff auf Ihre Daten zu erhalten, muss Ihr Client mit Microsoft Entra ID unter Verwendung von OAuth 2.0 autorisieren. Um den Zugriff zu aktivieren, müssen Sie zuerst eine native App in Azure einrichten und der Microsoft Intune-API Berechtigungen erteilen. Ihr lokaler Client erhält die Autorisierung, und dann kann der Client über die native App mit den Data Warehouse-Endpunkten kommunizieren.
Die Schritte zum Einrichten eines Clients zum Abrufen von Daten aus der Data Warehouse-API erfordern Folgendes:
- Erstellen einer Client-App als native App in Azure
- Erteilen Sie der Client-App Zugriff auf die Microsoft Intune-API
- Erstellen eines lokalen REST-Clients zum Abrufen der Daten
Führen Sie die folgenden Schritte aus, um zu erfahren, wie Sie die API mit einem REST-Client autorisieren und darauf zugreifen. Zunächst betrachten Sie die Verwendung eines generischen REST-Clients mit Postman. Postman ist ein häufig verwendetes Tool zur Problembehandlung und Entwicklung von REST-Clients für die Arbeit mit APIs. Weitere Informationen zu Postman finden Sie auf der Postman-Website . Dann können Sie sich ein C#-Codebeispiel ansehen. Das Beispiel enthält ein Beispiel für die Autorisierung eines Clients und das Abrufen von Daten aus der API.
Erstellen einer Client-App als native App in Azure
Erstellen Sie eine native App in Azure. Diese native App ist die Client-App. Der auf Ihrem lokalen Computer ausgeführte Client verweist auf die Intune Data Warehouse API, wenn der lokale Client Anmeldeinformationen anfordert.
- Melden Sie sich beim Microsoft Entra Admin Centeran.
- Wählen Sie "Microsoft EntraIDApp-Registrierungen>" aus, um den Bereich "App-Registrierungen" zu öffnen.
- Wählen Sie Neue App-Registrierung aus.
- Geben Sie die App-Details ein.
- Geben Sie einen Anzeigenamen ein, z. B. "Intune Data Warehouse Client", um den Namen zu ermitteln.
- Wählen Sie nur Konten in diesem Organisationsverzeichnis (nur Microsoft – einzelner Mandant) für die unterstützten Kontotypen aus.
- Geben Sie eine URL für den Umleitungs-URI ein. Der Umleitungs-URI hängt vom jeweiligen Szenario ab, aber wenn Sie Postman verwenden möchten, geben Sie
https://www.getpostman.com/oauth2/callbackein. Sie verwenden den Rückruf für den Schritt zur Clientauthentifizierung bei der Authentifizierung bei Microsoft Entra ID.
- Wählen Sie Registrieren aus.
- Notieren Sie die Anwendungs-ID (Client-ID) dieser App. Sie verwenden die ID im nächsten Abschnitt.
Erteilen Sie der Client-App Zugriff auf die Microsoft Intune-API
Sie haben jetzt eine App in Azure definiert. Hiermit gewähren Sie Zugriff aus der nativen App auf die Microsoft Intune-API.
- Melden Sie sich beim Microsoft Entra Admin Centeran.
- Wählen Sie "Microsoft EntraIDApp-Registrierungen>" aus, um den Bereich "App-Registrierungen" zu öffnen.
- Wählen Sie die App aus, der Sie Zugriff gewähren möchten. Sie haben der App einen Namen gegeben, etwa Intune Data Warehouse Client.
- API-Berechtigungen> auswählenBerechtigung hinzufügen
- Suchen Sie die Intune-API, und wählen Sie sie aus. Sie heißt Microsoft Intune API.
- Wählen Sie das Feld Delegierte Berechtigungen aus, und klicken Sie auf das Feld Data Warehouse-Informationen von Microsoft Intune abrufen.
- Klicken Sie auf Berechtigungen hinzufügen.
- Optional können Sie im Bereich "Konfigurierte Berechtigungen" die Option "Administratoreinwilligung für Microsoft erteilen " und dann "Ja" auswählen. Dadurch wird Zugriff auf alle Konten im aktuellen Verzeichnis gewährt. Dadurch wird verhindert, dass das Zustimmungsdialogfeld für jeden Benutzer im Mandanten angezeigt wird. Weitere Informationen finden Sie unter Integrieren von Anwendungen mit Microsoft Entra ID.
- Wählen Sie Zertifikate & secrets>+ Neuer geheimer Clientschlüssel aus, und generieren Sie einen neuen geheimen Schlüssel. Stellen Sie sicher, dass Sie sie an einem sicheren Ort kopieren, da Sie nicht mehr darauf zugreifen können.
Abrufen von Daten aus der Microsoft Intune API mit Postman
Sie können mit der Intune Data Warehouse-API mit einem generischen REST-Client wie Postman arbeiten. Postman kann Einblicke in die Features der API und das zugrunde liegende OData-Datenmodell geben und Probleme bei der Verbindung mit den API-Ressourcen beheben. In diesem Abschnitt finden Sie Informationen zum Generieren eines Auth2.0-Tokens für Ihren lokalen Client. Der Client benötigt das Token, um sich bei Microsoft Entra ID zu authentifizieren und auf die API-Ressourcen zuzugreifen.
Informationen, die Sie benötigen, um den Anruf zu tätigen
You need the following information to make a REST call using Postman:
| Attribut | Beschreibung | Beispiel |
|---|---|---|
| Rückruf-URL | Legen Sie dies als Rückruf-URL auf der Seite mit den App-Einstellungen fest. | https://www.getpostman.com/oauth2/callback |
| Token Name | Eine Zeichenfolge, die zum Übergeben der Anmeldeinformationen an die Azure-App verwendet wird. Der Prozess generiert Ihr Token, damit Sie die Data Warehouse-API aufrufen können. | Bearer |
| Auth-URL | Dies ist die URL, die zur Authentifizierung verwendet wird. | https://login.microsoftonline.com/common/oauth2/authorize?resource=https://api.manage.microsoft.com/ |
| Zugriffstoken-URL | Dies ist die URL, die zum Erteilen des Tokens verwendet wird. | https://login.microsoftonline.com/common/oauth2/token |
| Client-ID | Sie haben die native App in Azure erstellt und dies beim Erstellen der nativen App notiert. | 4184c61a-e324-4f51-83d7-022b6a81b991 |
| Geheimer Clientschlüssel | Sie haben die native App in Azure erstellt und dies beim Erstellen der nativen App notiert. | Ksml3dhDJs+jfK1f8Mwc8 |
| Bereich (optional) | Sie können das Feld leer lassen. HINWEIS: Bei einigen SDKs, z. B. der Microsoft Authentication Library (MSAL) (MSAL) für Python, muss der Bereich möglicherweise mit doppelten Schrägstrichen (//) definiert werden. |
BEREICH = ['https://api.manage.microsoft.com//.default'] |
| Zuschusstyp | Das Token ist ein Autorisierungscode. | Dem Authorisierungscode |
OData-Endpunkt
Sie benötigen auch den Endpunkt. Um Ihren Data Warehouse-Endpunkt abzurufen, benötigen Sie die benutzerdefinierte Feed-URL. Sie können den OData-Endpunkt aus dem Bereich Data Warehouse abrufen.
- Melden Sie sich beim Microsoft Intune Admin Center an.
- Öffnen Sie den Bereich Data Warehouse, indem Sie DataWarehouseBerichte> auswählen.
- Kopieren Sie die benutzerdefinierte Feed-URL unter OData-Feed für den Reporting Service. Sie sollte in etwa wie folgt aussehen:
https://fef.tenant.manage.microsoft.com/ReportingService/DataWarehouseFEService?api-version=v1.0
Der Endpunkt weist das folgende Format auf: https://fef.{yourtenant}.manage.microsoft.com/ReportingService/DataWarehouseFEService/{entity}?api-version={verson-number}
Die Datumsentität sieht beispielsweise wie folgt aus: https://fef.tenant.manage.microsoft.com/ReportingService/DataWarehouseFEService/dates?api-version=v1.0
Weitere Informationen finden Sie unter Intune Data Warehouse API-Endpunkt.
Tätigen Sie den REST-Aufruf
Um ein neues Zugriffstoken für Postman zu erhalten, müssen Sie die Autorisierungs-URL von Microsoft Entra, Ihre Client-ID und Ihren geheimen Clientschlüssel hinzufügen. Postman lädt die Autorisierungsseite, auf der Sie Ihre Anmeldeinformationen eingeben.
Stellen Sie vor dem Anruf sicher, dass Sie die Rückruf-URL bereits Ihrer App in Azure hinzugefügt haben. Die Rückruf-URL lautet https://www.getpostman.com/oauth2/callback.
Fügen Sie die Informationen hinzu, die zum Anfordern des Tokens verwendet werden
Laden Sie Postman herunter, wenn Sie es noch nicht installiert haben. Informationen zum Herunterladen von Postman finden Sie unter www.getpostman.com.
Öffnen Sie Postman. Wählen Sie den HTTP-Vorgang GET aus.
Fügen Sie die Endpunkt-URL in die Adresse ein. Sie sollte in etwa wie folgt aussehen:
https://fef.tenant.manage.microsoft.com/ReportingService/DataWarehouseFEService/dates?api-version=v1.0Wählen Sie die Registerkarte Autorisierung , und wählen Sie OAuth 2.0 aus der Liste Typ aus.
Scrollen Sie nach unten zum Abschnitt Neues Token konfigurieren .
Geben Sie den Bearer für den Tokennamen ein.
Wählen Sie Autorisierungscode als Gewährungstyp aus.
Fügen Sie die Rückruf-URL hinzu. Die Rückruf-URL lautet
https://www.getpostman.com/oauth2/callback.Fügen Sie die Authentifizierungs-URL hinzu. Sie sollte in etwa wie folgt aussehen:
https://login.microsoftonline.com/common/oauth2/authorize?resource=https://api.manage.microsoft.com/Fügen Sie die Zugriffstoken-URL hinzu. Sie sollte in etwa wie folgt aussehen:
https://login.microsoftonline.com/common/oauth2/tokenFügen Sie die Client-ID aus der nativen App hinzu, die Sie in Azure erstellt haben
Intune Data Warehouse Client. Sie sollte in etwa wie folgt aussehen:88C8527B-59CB-4679-A9C8-324941748BB4Fügen Sie den geheimen Clientschlüssel hinzu, den Sie in der nativen App generiert haben, die Sie in Azure erstellt haben. Sie sollte in etwa wie folgt aussehen:
Ksml3dhDJs+jfK1f8Mwc8Wählen Sie "Neues Zugriffstoken abrufen" aus.
Geben Sie Ihre Anmeldeinformationen auf der Seite "Active AD-Autorisierung" ein. Die Liste der Token in Postman enthält jetzt das Token mit dem Namen
Bearer.Wählen Sie Token verwenden aus. Die Liste der Header enthält den neuen Schlüsselwert Authorization und den Wert
Bearer <your-authorization-token>.
Anruf über Postman an Endpunkt senden
Erstellen eines REST-Clients (C#) zum Abrufen von Daten aus dem Intune Data Warehouse
Das folgende Beispiel enthält einen einfachen REST-Client. Der Code verwendet die httpClient-Klasse aus der .NET-Bibliothek. Sobald der Client Anmeldeinformationen für Microsoft Entra ID erhält, erstellt der Client einen GET REST-Aufruf, um die Datumsentität aus der Data Warehouse-API abzurufen.
Hinweis
Sie können auf das folgende Codebeispiel auf GitHub zugreifen. Im GitHub-Repository finden Sie die neuesten Änderungen und Updates des Beispiels.
Öffnen Sie Microsoft Visual Studio.
Wählen Sie Datei>Neues Projekt aus. Erweitern Sie Visual C#, und wählen Sie Konsolen-App (.NET Framework) aus.
Benennen Sie das Projekt
IntuneDataWarehouseSamples, navigieren Sie zum Speicherort des Projekts, und wählen Sie dann OK aus.Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf den Namen der Projektmappe, und wählen Sie dann NuGet-Pakete für Projektmappe verwalten aus. Wählen Sie "Durchsuchen" aus, und geben Sie dann in das Suchfeld ein
Microsoft.Identity.Client.Hinweis
Sie müssen die Microsoft Authentication Library (MSAL) (MSAL) verwenden. Weitere Informationen finden Sie unter Aktualisieren Ihrer Anwendungen für die Verwendung der Microsoft-Authentifizierungsbibliothek (MSAL) und der Microsoft Graph-API.
Wählen Sie das Paket aus, wählen Sie unter Pakete für Ihre Lösung verwalten das Projekt IntuneDataWarehouseSamples aus, und wählen Sie dann Installieren aus.
Wählen Sie "Ich stimme zu ", um die NuGet-Paketlizenz zu akzeptieren.
Öffnen
Program.csSie diese im Projektmappen-Explorer.Ersetzen Sie den Code in Program.cs durch den folgenden Code:
namespace IntuneDataWarehouseSamples { using System; using System.Net.Http; using System.Net.Http.Headers; using Microsoft.Identity.Client; class Program { static void Main(string[] args) { /** * TODO: Replace the below values with your own. * emailAddress - The email address of the user that you will authenticate as. * * password - The password for the above email address. * This is inline only for simplicity in this sample. We do not * recommend storing passwords in plaintext. * * applicationId - The application ID of the native app that was created in AAD. * * warehouseUrl - The data warehouse URL for your tenant. This can be found in * the Microsoft Intune admin center. * * collectionName - The name of the warehouse entity collection you would like to * access. */ var emailAddress = "intuneadmin@yourcompany.com"; var password = "password_of(intuneadmin@yourcompany.com)"; var applicationId = "<Application ID>"; var warehouseUrl = "https://fef.{yourinfo}.manage.microsoft.com/ReportingService/DataWarehouseFEService?api-version=v1.0"; var collectionName = "dates"; var msalContext = new AuthenticationContext("https://login.windows.net/common/oauth2/token"); AuthenticationResult authResult = msalContext.AcquireTokenAsync( resource: "https://api.manage.microsoft.com/", clientId: applicationId, userCredential: new UserPasswordCredential(emailAddress, password)).Result; var httpClient = new HttpClient(); httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", authResult.AccessToken); var uriBuilder = new UriBuilder(warehouseUrl); uriBuilder.Path += "/" + collectionName; HttpResponseMessage response = httpClient.GetAsync(uriBuilder.Uri).Result; Console.Write(response.Content.ReadAsStringAsync().Result); Console.ReadKey(); } } }Aktualisieren Sie die
TODOs im Codebeispiel.Drücken Sie STRG+F5, um Intune zu erstellen und auszuführen. DataWarehouseAPIClient-Client im Debugmodus.
Überprüfen Sie die Konsolenausgabe. Die Ausgabe enthält Daten in einem JSON-Format, die aus der Datumsentität in Ihrem Intune-Mandanten abgerufen wurden.
Nächste Schritte
Details zur Autorisierung, zur API-URL-Struktur und zu OData-Endpunkten finden Sie unter Verwenden der Intune Data Warehouse API.
Sie können auch auf das Intune Data Warehouse Datenmodell verweisen, um die in der API enthaltenen Datenentitäten zu finden. Weitere Informationen finden Sie unter Intune Data Warehouse API-Datenmodell.