Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Du kan konfigurera ett program med Microsoft Entra ID och autentisera till Intune Data Warehouse. Den här processen är användbar för webbplatser, appar och bakgrundsprocesser där programmet inte ska ha åtkomst till användarautentiseringsuppgifter. Med hjälp av följande steg auktoriserar du ditt program med Microsoft Entra ID med OAuth 2.0.
Behörighet
Microsoft Entra ID använder OAuth 2.0 så att du kan auktorisera åtkomst till webbprogram och webb-API i din Microsoft Entra klientorganisation. Den här guiden visar hur du autentiserar ditt program med hjälp av C#. OAuth 2.0-auktoriseringskodflödet beskrivs i avsnitt 4.1 i OAuth 2.0-specifikationen. Mer information finns i Auktorisera åtkomst till webbprogram med OAuth 2.0 och Microsoft Entra ID.
Azure KeyVault
Följande process använder en privat metod för att bearbeta och konvertera en appnyckel. Den här privata metoden har fått namnet SecureString. Alternativt kan du använda Azure KeyVault för att lagra appnyckeln. Mer information finns i Key Vault.
Skapa en webbapp
I det här avsnittet anger du information om webbappen som du vill peka på i Intune. Ett webbprogram är ett klient/server-program. Servern tillhandahåller webbappen, som innehåller användargränssnitt, innehåll och funktioner. Den här typen av app underhålls separat på webben. Du använder Intune för att bevilja en webbapp åtkomst till Intune. Dataflödet initieras av webbappen.
Logga in på Microsoft Intune administrationscenter.
Välj Alla tjänster>M365 Microsoft Entra ID>Microsoft Entra ID>Appregistreringar.
Klicka på Ny registrering för att visa fönstret Registrera ett program .
I fönstret Registrera ett program lägger du till programinformationen:
- Ett appnamn, till exempel Intune App-Only Auth.
- Den kontotyp som stöds.
- Programmets omdirigerings-URI. Det här är den plats som användarna automatiskt navigerar till under autentiseringsprocessen. De måste bevisa att de är de som de utger sig för att vara. Mer information finns i Vad är programåtkomst och enkel inloggning med Microsoft Entra ID?
Klicka på Registrera.
Obs!
Kopiera program-ID:t (klienten) från programfönstret och använd det senare.
Skapa en nyckel (lösenord)
I det här avsnittet genererar Microsoft Entra ID ett nyckelvärde för din app.
I fönstret Appregistreringar väljer du den nyligen skapade appen för att visa appfönstret.
Välj Certifikat & hemligheter längst upp i fönstret för att visa fönstret Certifikat & hemligheter .
Välj Klienthemligheter i fönstret Certifikat & hemligheter .
Lägg till nyckelbeskrivningen och en förfallotid för nyckeln.
Klicka på Lägg till för att spara och uppdatera programmets nycklar.
Du måste kopiera det genererade nyckelvärdet (base64-kodat).
Obs!
Nyckelvärdet försvinner när du lämnar fönstret Certifikat & hemligheter . Det går inte att hämta nyckeln från det här fönstret senare. Kopiera den för senare användning.
Bevilja programbehörigheter
I det här avsnittet beviljar du behörigheter till programmen.
- Välj API-behörigheter>Lägg till enbehörighetIntuneProgrambehörigheter>>.
- Välj alternativet get_data_warehouse (Hämta informationslagerinformation från Microsoft Intune).
- Klicka på Lägg till behörigheter.
- Klicka på Klar i fönstret Lägg till API-åtkomst .
- Klicka på Bevilja administratörsmedgivande i fönstret API-behörigheter och klicka på Ja när du befordras för att uppdatera befintliga behörigheter som det här programmet redan har.
Generera token
Använd Visual Studio och skapa ett konsolappprojekt (.NET Framework) som stöder .NET Framework och använder C# som kodningsspråk.
Välj Arkiv>Nytt>projekt för att visa dialogrutan Nytt projekt .
Till vänster väljer du Visual C# för att visa alla .NET Framework projekt.
Välj Konsolapp (.NET Framework), lägg till ett appnamn och klicka sedan på OK för att skapa appen.
I Prieskumník riešení väljer du Program.cs för att visa koden.
I Prieskumník riešení lägger du till en referens till sammansättningen
System.Configuration.I popup-menyn väljer du Lägg till>nytt objekt. Dialogrutan Lägg till nytt objekt visas.
Till vänster, under Visual C#, väljer du Kod.
Välj Klass, ändra namnet på klassen till IntuneDataWarehouseClass.cs och klicka på Lägg till.
Lägg till följande kod i
Mainmetoden:var applicationId = ConfigurationManager.AppSettings["appId"].ToString(); SecureString applicationSecret = ConvertToSecureStr(ConfigurationManager.AppSettings["appKey"].ToString()); // Load as SecureString from configuration file or secret store (i.e. Azure KeyVault) var tenantDomain = ConfigurationManager.AppSettings["tenantDomain"].ToString(); var msalContext = new AuthenticationContext($"https://login.windows.net/" + tenantDomain + "/oauth2/token"); AuthenticationResult authResult = msalContext.AcquireTokenAsync( resource: "https://api.manage.microsoft.com/", clientCredential: new ClientCredential( applicationId, new SecureClientSecret(applicationSecret))).Result;Lägg till ytterligare namnområden genom att lägga till följande kod överst i kodfilen:
using System.Security; using Microsoft.Identity.Client; using System.Configuration;Obs!
Du måste använda Microsofts autentiseringsbibliotek (MSAL). Mer information finns i Uppdatera dina program så de använder Microsofts autentiseringsbibliotek (MSAL) och Microsoft Graph API.
MainEfter metoden lägger du till följande privata metod för att bearbeta och konvertera appnyckeln:private static SecureString ConvertToSecureStr(string appkey) { if (appkey == null) throw new ArgumentNullException("AppKey must not be null."); var secureAppKey = new SecureString(); foreach (char c in appkey) secureAppKey.AppendChar(c); secureAppKey.MakeReadOnly(); return secureAppKey; }I Prieskumník riešení högerklickar du på Referenser och väljer sedan Hantera NuGet-paket.
Sök efter Microsoft.Identity.Client och installera det relaterade Microsoft NuGet-paketet.
I Prieskumník riešení markerar och öppnar du denApp.config filen.
Lägg till
appSettingsavsnittet så att xml-koden visas på följande sätt:<?xml version="1.0" encoding="utf-8" ?> <configuration> <startup> <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.1" /> </startup> <appSettings> <add key="appId" value="App ID created from 'Create a Web App' procedure"/> <add key="appKey" value="Key created from 'Create a key' procedure" /> <add key="tenantDomain" value="contoso.onmicrosoft.com"/> </appSettings> </configuration>Uppdatera värdena ,
appIdappKeyochtenantDomainså att de matchar dina unika apprelaterade värden.Skapa din app.
Obs!
Mer implementeringskod finns i exemplet på Intune-Data-Warehouse-kod.
Nästa steg
Läs mer om Azure Key Vault genom att läsa Vad är Azure Key Vault?