Aracılığıyla paylaş


Uç Nokta için Microsoft Defender API'leri aracılığıyla iş ortağı erişimi

Şunlar için geçerlidir:

Önemli

Gelişmiş avcılık özellikleri İş için Defender'a dahil değildir.

Uç Nokta için Microsoft Defender'ı deneyimlemek ister misiniz? Ücretsiz deneme için kaydolun.

Not

ABD Kamu müşterisiyseniz lütfen US Government müşterileri için Uç Nokta için Microsoft Defender'de listelenen URI'leri kullanın.

İpucu

Daha iyi performans için coğrafi konumunuza daha yakın olan sunucuyu kullanabilirsiniz:

  • us.api.security.microsoft.com
  • eu.api.security.microsoft.com
  • uk.api.security.microsoft.com
  • au.api.security.microsoft.com
  • swa.api.security.microsoft.com

Bu sayfada, müşterileriniz adına Uç Nokta için Microsoft Defender program aracılığıyla erişim elde etmek için bir Microsoft Entra uygulamasının nasıl oluşturulacağı açıklanır.

Uç Nokta için Microsoft Defender, bir dizi programlı API aracılığıyla verilerinin ve eylemlerinin büyük bir kısmını kullanıma sunar. Bu API'ler, iş akışlarını otomatikleştirmenize ve Uç Nokta için Microsoft Defender özelliklerine göre yenilik oluşturmanıza yardımcı olur. API erişimi için OAuth2.0 kimlik doğrulaması gerekir. Daha fazla bilgi için bkz . OAuth 2.0 Yetkilendirme Kodu Akışı.

Genel olarak, API'leri kullanmak için aşağıdaki adımları uygulamanız gerekir:

  • Çok kiracılı bir Microsoft Entra uygulaması İçerik Oluşturucu.
  • Uygulamanızın ihtiyaç duyduğu Uç Nokta için Defender kaynaklarına erişmesi için müşteri yöneticinizden yetki (onay) alın.
  • Bu uygulamayı kullanarak erişim belirteci alın.
  • Uç Nokta için Microsoft Defender API'ye erişmek için belirteci kullanın.

Aşağıdaki adımlar bir Microsoft Entra uygulaması oluşturma, Uç Nokta için Microsoft Defender için erişim belirteci alma ve belirteci doğrulama konusunda size yol gösterir.

Çok kiracılı uygulamayı İçerik Oluşturucu

  1. Genel Yönetici rolüne sahip kullanıcıyla Azure kiracınızda oturum açın.

  2. Microsoft Entra ID>Uygulama kayıtları>Yeni kayıt'a gidin.

    Uygulama kaydı bölmesine gezinti

  3. Kayıt formunda:

    • Uygulamanız için bir ad seçin.

    • Desteklenen hesap türleri - herhangi bir kuruluş dizinindeki hesaplar.

    • Yeniden yönlendirme URI'si - tür: Web, URI: https://portal.azure.com

      Microsoft Azure iş ortağı uygulama kaydı sayfası

  4. Uygulamanızın Uç Nokta için Microsoft Defender erişmesine izin verin ve tümleştirmeyi tamamlamak için gereken en düşük izin kümesiyle uygulamayı atayın.

    • Uygulama sayfanızda API İzinleriKuruluşumun kullandığı>izin> API'leri >ekle'yi seçin WindowsDefenderATP yazın ve WindowsDefenderATP'yi seçin.

    • WindowsDefenderATP'nin özgün listede görünmediğini unutmayın. Görünmesini görmek için metin kutusuna adını yazmaya başlayın.

      İzin ekle seçeneği

API izinleri isteme

Hangi izne ihtiyacınız olduğunu belirlemek için çağırmak istediğiniz API'nin İzinler bölümünü gözden geçirin. Örneğin:

Aşağıdaki örnekte 'Tüm uyarıları oku' iznini kullanıyoruz:

  1. Uygulama izinleri>Alert.Read.All> seçeneğini İzin ekle'yi seçin

    İzin eklemeye izin veren seçenek

  2. İzin ver'i seçin

    • Not: İzin eklediğinizde, yeni iznin geçerli olması için Onay ver'i seçmeniz gerekir.

    Onay verilmesine izin veren seçenek

  3. Uygulamaya gizli dizi ekleyin.

    • Sertifikalar & gizli diziler'i seçin, gizli diziye açıklama ekleyin ve Ekle'yi seçin.

    Önemli: Ekle'yi seçtikten sonra, oluşturulan gizli dizi değerini kopyaladığınızdan emin olun. Gittikten sonra geri alamayacaksınız!

    Uygulama oluşturma anahtarı

  4. Uygulama kimliğinizi not edin:

    • Uygulama sayfanızda Genel Bakış'a gidin ve aşağıdaki bilgileri kopyalayın:

      Oluşturma uygulamasının kimliği

  5. Uygulamayı müşterinizin kiracısına ekleyin.

    Uygulamanızı kullanmak istediğiniz her müşteri kiracısında onaylanması gerekir. Uygulamanız müşteriniz adına Uç Nokta için Microsoft Defender uygulamayla etkileşimde bulunduğundan bu onay gereklidir.

    Müşterinizin kiracısından Genel Yöneticiye sahip bir kullanıcının onay bağlantısını seçip uygulamanızı onaylaması gerekir.

    Onay bağlantısı şu biçimdedir:

    https://login.microsoftonline.com/common/oauth2/authorize?prompt=consent&client_id=00000000-0000-0000-0000-000000000000&response_type=code&sso_reload=true
    

    Burada 000000000-0000-0000-0000-0000000000000000 yerine Uygulama Kimliğiniz kullanılmalıdır

    Onay bağlantısına tıkladıktan sonra müşterinin kiracısının Genel Yöneticisi ile oturum açın ve uygulamayı onaylayın.

    Kabul Et düğmesi

    Ayrıca, müşterinizden kiracı kimliğini istemeniz ve belirteci alırken gelecekte kullanmak üzere kaydetmeniz gerekir.

  6. Bitti! Bir uygulamayı başarıyla kaydettiniz! Belirteç alma ve doğrulama için aşağıdaki örneklere bakın.

Erişim belirteci örneği alma

Not: Müşteriniz adına erişim belirteci almak için aşağıdaki belirteç alımlarında müşterinin kiracı kimliğini kullanın.

Microsoft Entra belirteci hakkında daha fazla bilgi için bkz. Microsoft Entra öğreticisi.

PowerShell kullanma

# That code gets the App Context Token and save it to a file named "Latest-token.txt" under the current directory
# Paste below your Tenant ID, App ID and App Secret (App key).

$tenantId = '' ### Paste your tenant ID here
$appId = '' ### Paste your Application ID here
$appSecret = '' ### Paste your Application key here

$resourceAppIdUri = 'https://api.securitycenter.microsoft.com'
$oAuthUri = "https://login.microsoftonline.com/$TenantId/oauth2/token"
$authBody = [Ordered] @{
    resource = "$resourceAppIdUri"
    client_id = "$appId"
    client_secret = "$appSecret"
    grant_type = 'client_credentials'
}
$authResponse = Invoke-RestMethod -Method Post -Uri $oAuthUri -Body $authBody -ErrorAction Stop
$token = $authResponse.access_token
Out-File -FilePath "./Latest-token.txt" -InputObject $token
return $token

C kullanma#

Aşağıdaki kod Nuget Microsoft.Identity.Client ile test edilmiştir

Önemli

Microsoft.IdentityModel.Clients.ActiveDirectory NuGet paketi ve Azure AD Kimlik Doğrulama Kitaplığı (ADAL) kullanım dışı bırakıldı. 30 Haziran 2020'den bu yana yeni özellik eklenmemiş. Yükseltmenizi kesinlikle öneririz. Diğer ayrıntılar için geçiş kılavuzuna bakın.

  • Yeni bir Konsol Uygulaması İçerik Oluşturucu

  • NuGet Microsoft.Identity.Client'ı yükleme

  • Kullanarak aşağıdakini ekleyin

    using Microsoft.Identity.Client;
    
  • Uygulamanıza aşağıdaki kodu kopyalayın/yapıştırın (üç değişkeni güncelleştirmeyi unutmayın: tenantId, appIdve appSecret)

    string tenantId = "00000000-0000-0000-0000-000000000000"; // Paste your own tenant ID here
    string appId = "11111111-1111-1111-1111-111111111111"; // Paste your own app ID here
    string appSecret = "22222222-2222-2222-2222-222222222222"; // Paste your own app secret here for a test, and then store it in a safe place! 
    const string authority = https://login.microsoftonline.com;
    const string audience = https://api.securitycenter.microsoft.com;
    
    IConfidentialClientApplication myApp = ConfidentialClientApplicationBuilder.Create(appId).WithClientSecret(appSecret).WithAuthority($"{authority}/{tenantId}").Build();
    
    List<string> scopes = new List<string>() { $"{audience}/.default" };
    
    AuthenticationResult authResult = myApp.AcquireTokenForClient(scopes).ExecuteAsync().GetAwaiter().GetResult();
    
    string token = authResult.AccessToken;
    

Python kullanma

Python kullanarak belirteç alma bölümüne bakın.

Curl kullanma

Not

Windows için Curl'in bilgisayarınızda zaten yüklü olduğu varsayılan aşağıdaki yordam

  1. Bir komut penceresi açın.

  2. CLIENT_ID Azure uygulama kimliğiniz olarak ayarlayın.

  3. CLIENT_SECRET Azure uygulama gizli dizinize ayarlayın.

  4. Uç Nokta için Microsoft Defender uygulamasına erişmek için uygulamanızı kullanmak isteyen müşterinin Azure kiracı kimliğine TENANT_ID ayarlayın.

  5. Aşağıdaki komutu çalıştırın:

    curl -i -X POST -H "Content-Type:application/x-www-form-urlencoded" -d "grant_type=client_credentials" -d "client_id=%CLIENT_ID%" -d "scope=https://securitycenter.onmicrosoft.com/windowsatpservice/.default" -d "client_secret=%CLIENT_SECRET%" "https://login.microsoftonline.com/%TENANT_ID%/oauth2/v2.0/token" -k
    

    Formun yanıtını alırsınız:

    {"token_type":"Bearer","expires_in":3599,"ext_expires_in":0,"access_token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIn <truncated> aWReH7P0s0tjTBX8wGWqJUdDA"}
    

Belirteci doğrulama

Doğru belirteci aldığınızı onaylayın.

  1. Kodunu çözmek için önceki adımda aldığınız belirteci JWT'ye kopyalayın/yapıştırın.

  2. İstenen izinlere sahip bir 'roller' talebi aldığınızdan emin olun.

    Aşağıdaki ekran görüntüsünde, Uç Nokta için Microsoft Defender için birden çok izne sahip bir Uygulamadan alınan kodu çözülen belirteci görebilirsiniz:

    "tid" talebi, belirtecin ait olduğu kiracı kimliğidir.

    Belirteç doğrulama sayfası

Uç Nokta için Microsoft Defender API'ye erişmek için belirteci kullanma

  1. Kullanmak istediğiniz API'yi seçin. Daha fazla bilgi için bkz. Desteklenen Uç Nokta için Microsoft Defender API'leri.

  2. Gönderdiğiniz Http isteğinde Yetkilendirme üst bilgisini "Taşıyıcı {token}" olarak ayarlayın (Taşıyıcı, Yetkilendirme şemasıdır). Belirtecin Sona erme süresi 1 saattir (aynı belirteçle birden fazla istek gönderebilirsiniz).

    C# kullanarak uyarıların listesini almak için istek gönderme örneği aşağıda verilmiştir

    var httpClient = new HttpClient();
    
    var request = new HttpRequestMessage(HttpMethod.Get, "https://api.securitycenter.microsoft.com/api/alerts");
    
    request.Headers.Authorization = new AuthenticationHeaderValue("Bearer", token);
    
    var response = httpClient.SendAsync(request).GetAwaiter().GetResult();
    
     // Do something useful with the response
    

Ayrıca bkz.

İpucu

Daha fazla bilgi edinmek mi istiyorsunuz? Teknoloji Topluluğumuzdaki Microsoft Güvenlik topluluğuyla Engage: Uç Nokta için Microsoft Defender Teknoloji Topluluğu.