Intune Data Warehouse Application-Only Kimlik Doğrulaması

Microsoft Entra ID kullanarak bir uygulama ayarlayabilir ve Intune Data Warehouse kimlik doğrulaması yapabilirsiniz. Bu işlem, uygulamanın kullanıcı kimlik bilgilerine erişimi olmaması gereken web siteleri, uygulamalar ve arka plan işlemleri için kullanışlıdır. Aşağıdaki adımları kullanarak, OAuth 2.0 kullanarak uygulamanızı Microsoft Entra ID ile yetkilendirilmiş olacaksınız.

Yetkilendirme

Microsoft Entra ID, Microsoft Entra kiracınızdaki web uygulamalarına ve web API'lerine erişimi yetkilendirmenizi sağlamak için OAuth 2.0 kullanır. Bu kılavuzda, C# kullanarak uygulamanızın kimliğini nasıl doğruladığınız gösterilir. OAuth 2.0 yetkilendirme kodu akışı, OAuth 2.0 belirtiminin 4.1 bölümünde açıklanmıştır. Daha fazla bilgi için bkz. OAuth 2.0 ve Microsoft Entra ID kullanarak web uygulamalarına erişimi yetkilendirme.

KeyVault Azure

Aşağıdaki işlem, bir uygulama anahtarını işlemek ve dönüştürmek için özel bir yöntem kullanır. Bu özel yöntem SecureString olarak adlandırılmıştır. Alternatif olarak, uygulama anahtarını depolamak için Azure KeyVault kullanabilirsiniz. Daha fazla bilgi için bkz. Key Vault.

Web Uygulaması oluşturma

Bu bölümde, Intune işaret etmek istediğiniz Web uygulamasıyla ilgili ayrıntıları sağlayacaksınız. Web uygulaması bir istemci-sunucu uygulamasıdır. Sunucu, kullanıcı arabirimini, içeriği ve işlevselliği içeren web uygulamasını sağlar. Bu uygulama türü Web'de ayrı olarak korunur. web uygulamasına Intune erişim vermek için Intune kullanırsınız. Veri akışı web uygulaması tarafından başlatılır.

  1. Microsoft Intune yönetim merkezinde oturum açın.

  2. Tüm hizmetler>M365 Microsoft Entra ID>Microsoft Entra ID>Uygulama kayıtları'ı seçin.

  3. Uygulama kaydet bölmesini görüntülemek için Yeni kayıt'a tıklayın.

  4. Uygulama kaydetme bölmesinde uygulama ayrıntılarınızı ekleyin:

    • Intune App-Only Kimlik Doğrulaması gibi bir uygulama adı.
    • Desteklenen hesap türü.
    • Uygulamanın Yeniden Yönlendirme URI'si . Bu, kullanıcıların kimlik doğrulama işlemi sırasında otomatik olarak gidilir konumudur. Söyledikleri kişi olduklarını kanıtlamaları gerekir. Daha fazla bilgi için bkz. Uygulama erişimi ve Microsoft Entra ID ile çoklu oturum açma nedir?
  5. Kaydet'e tıklayın.

    Not

    Daha sonra kullanmak için uygulama bölmesinden Uygulama (istemci) kimliğini kopyalayın.

Anahtar oluşturma (parola)

Bu bölümde Microsoft Entra ID uygulamanız için bir anahtar değeri oluşturur.

  1. Uygulama kayıtları bölmesinde yeni oluşturduğunuz uygulamayı seçerek uygulama bölmesini görüntüleyin.

  2. Bölmenin üst kısmındaki Sertifikalar & gizlidiziler'i seçerek Sertifikalar & gizli diziler bölmesini görüntüleyin.

  3. Sertifikalar & gizli diziler bölmesinde İstemci gizli dizileri'ni seçin.

  4. Anahtar için Açıklama anahtarını ve Süre sonu süresini ekleyin.

  5. Uygulamanın anahtarlarını kaydetmek ve güncelleştirmek için Ekle'ye tıklayın.

  6. Oluşturulan anahtar değerini kopyalamanız gerekir (base64 kodlanmış).

    Not

    Sertifikalar & gizli diziler bölmesinden ayrıldıktan sonra anahtar değeri kaybolur. Anahtarı bu bölmeden daha sonra alamazsınız. Daha sonra kullanmak için kopyalayın.

Uygulama izinleri verme

Bu bölümde, uygulamalara izinler verirsiniz.

  1. API izinleri>İzin ekle>Intune>Uygulama izinleri'ne tıklayın.
  2. get_data_warehouse seçeneğini belirleyin (veri ambarı bilgilerini Microsoft Intune alma).
  3. İzin ekle'ye tıklayın.
  4. API erişimi ekle bölmesinde Bitti'ye tıklayın.
  5. API izinleri bölmesinde Yönetici onayı ver'e tıklayın ve bu uygulamanın zaten sahip olduğu tüm izinleri güncelleştirmek için yükseltildiğinde Evet'e tıklayın.

Belirteç oluşturma

Visual Studio kullanarak, .NET Framework destekleyen ve kodlama dili olarak C# kullanan bir Konsol Uygulaması (.NET Framework) projesi oluşturun.

  1. > YeniProje iletişim kutusunu görüntülemek için DosyaYeni>Proje'yi seçin.

  2. Tüm .NET Framework projelerini görüntülemek için sol tarafta Visual C# öğesini seçin.

  3. Konsol Uygulaması (.NET Framework) öğesini seçin, bir uygulama adı ekleyin ve ardından uygulamayı oluşturmak için Tamam'a tıklayın.

  4. kodu görüntülemek için Çözüm GezginiProgram.cs'ı seçin.

  5. Çözüm Gezgini derlemesine System.Configurationbir başvuru ekleyin.

  6. Açılır menüdeYeni öğeekle'yi> seçin. Yeni Öğe Ekle iletişim kutusu görüntülenir.

  7. Sol taraftaki Visual C# altında Kod'a tıklayın.

  8. Sınıf'ı seçin, sınıfın adını IntuneDataWarehouseClass.cs olarak değiştirin ve Ekle'ye tıklayın.

  9. Yöntemine aşağıdaki kodu Main ekleyin:

         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;
    
  10. Kod dosyasının en üstüne aşağıdaki kodu ekleyerek ek ad alanları ekleyin:

     using System.Security;
     using Microsoft.Identity.Client;
     using System.Configuration;
    

    Not

    Microsoft Kimlik Doğrulama Kitaplığı'nı (MSAL) kullanmanız gerekir. Daha fazla bilgi için bkz. Uygulamalarınızı Microsoft Kimlik Doğrulama Kitaplığı (MSAL) ve Microsoft Graph API kullanacak şekilde güncelleştirme.

  11. yönteminden Main sonra, uygulama anahtarını işlemek ve dönüştürmek için aşağıdaki özel yöntemi ekleyin:

    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;
    }
    
  12. Çözüm GezginiBaşvurular'a sağ tıklayıp NuGet Paketlerini Yönet'i seçin.

  13. Microsoft.Identity.Client için arama yapıp ilgili Microsoft NuGet paketini yükleyin.

  14. Çözüm GezginiApp.configdosyasını seçin ve açın.

  15. xml dosyasının appSettings aşağıdaki gibi görünmesi için bölümünü ekleyin:

    <?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>
    
  16. appId, appKeyve tenantDomain değerlerini uygulamayla ilgili benzersiz değerlerinizle eşleşecek şekilde güncelleştirin.

  17. Uygulamanızı oluşturun.

    Not

    Ek uygulama kodunu görmek için bkz. Intune-Data-Warehouse kod örneği.

Sonraki Adımlar

Azure Key Vault nedir? gözden geçirerek Azure Key Vault hakkında daha fazla bilgi edinin.