Aracılığıyla paylaş


Kullanıcı olmadan Uç Nokta için Microsoft Defender'a erişmek için uygulama oluşturma

Ş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'da 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, kullanıcı olmadan Uç Nokta için Defender'a programlı erişim elde etmek için bir uygulamanın nasıl oluşturulacağı açıklanır. Kullanıcı adına Uç Nokta için Defender'a programlı erişime ihtiyacınız varsa bkz. Kullanıcı bağlamıyla erişim alma. Hangi erişime ihtiyacınız olduğundan emin değilseniz bkz. Kullanmaya başlama.

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 Defender özelliklerine göre yenilik yapmaya 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:

  • Bir Microsoft Entra uygulaması oluşturun.
  • Bu uygulamayı kullanarak erişim belirteci alın.
  • Uç Nokta için Defender API'sine erişmek için belirteci kullanın.

Bu makalede bir Microsoft Entra uygulaması oluşturma, Uç Nokta için Microsoft Defender'a erişim belirteci alma ve belirteci doğrulama açıklanmaktadır.

Önemli

Microsoft, rolleri en az izinle kullanmanızı önerir. Bu, kuruluşunuzun güvenliğini artırmaya yardımcı olur. Genel Yönetici, mevcut bir rolü kullanamıyorsanız acil durum senaryolarıyla sınırlı olması gereken yüksek ayrıcalıklı bir roldür.

Uygulama oluşturma

  1. Genel Yönetici rolüne sahip bir kullanıcıyla Azure portalında oturum açın.

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

    Uygulama kaydı bölmesi

  3. Kayıt formunda, uygulamanız için bir ad seçin ve ardından Kaydet'i seçin.

  4. Uygulamanızın Uç Nokta için Defender'a erişmesini ve 'Tüm uyarıları okuma' izni atamasını sağlamak için uygulama sayfanızda API İzinleriKuruluşumun kullandığı> izin > API'leri >ekle'yiseçin, WindowsDefenderATP yazın ve ardından WindowsDefenderATP'yi seçin.

    Not

    WindowsDefenderATP özgün listede görünmez. Görünmesini görmek için metin kutusuna adını yazmaya başlayın.

    API izinleri bölmesi

    Uygulama izinleri>Alert.Read.All öğesini ve ardından İzin ekle'yi seçin.

    Uygulama izin bilgileri bölmesi

  5. Uygun izinleri seçin. Read All Alerts yalnızca bir örnektir. İşte birkaç örnek:

  6. İzin ver'i seçin.

    Not

    Her izin eklediğinizde, yeni iznin geçerli olması için Onay ver'i seçmeniz gerekir.

    İzin ver sayfası

  7. Uygulamaya gizli dizi eklemek için Sertifikalar & gizli dizileri seçin, gizli diziye bir açıklama ekleyin ve ardından Ekle'yi seçin.

    Not

    Ekle'yi seçtikten sonra oluşturulan gizli dizi değerini kopyala'yı seçin. Ayrıldıktan sonra bu değeri alamazsınız.

    Uygulama oluştur seçeneği

  8. Uygulama kimliğinizi ve kiracı kimliğinizi not edin. Uygulama sayfanızda Genel Bakış'a gidin ve aşağıdakileri kopyalayın.

    Oluşturulan uygulama ve kiracı kimlikleri

  9. Yalnızca Uç Nokta İş Ortakları için Microsoft Defender için. Uygulamanızı çok kiracılı olacak şekilde ayarlayın (onaydan sonra tüm kiracılarda kullanılabilir). Bu, üçüncü taraf uygulamalar için gereklidir (örneğin, birden çok müşterinin kiracısında çalıştırılması amaçlanan bir uygulama oluşturursanız). Yalnızca kiracınızda çalıştırmak istediğiniz bir hizmet oluşturursanız (örneğin, kendi kullanımınız için yalnızca kendi verilerinizle etkileşim kuracak bir uygulama oluşturursanız) bu gerekli değildir . Uygulamanızı çok kiracılı olarak ayarlamak için şu adımları izleyin:

    1. Kimlik Doğrulaması'na gidin ve Yeniden Yönlendirme URI'sini ekleyinhttps://portal.azure.com.

    2. Sayfanın en altındaki Desteklenen hesap türleri'nin altında, çok kiracılı uygulamanız için herhangi bir kuruluş dizini uygulamasındaki hesaplar onayını seçin.

      Uygulamanızı kullanmak istediğiniz her kiracıda onaylanması gerekir. Bunun nedeni, uygulamanızın müşteriniz adına Uç Nokta için Defender ile etkileşim kurmasıdır.

      Sizin (veya üçüncü taraf bir uygulama yazıyorsanız müşterinizin) onay bağlantısını seçip uygulamanızı onaylamanız gerekir. Onay, Active Directory'de yönetici ayrıcalıklarına sahip bir kullanıcıyla yapılmalıdır.

      Onay bağlantısı aşağıdaki gibi oluşturulur:

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

      Burada 00000000-0000-0000-0000-000000000000 , uygulama kimliğiniz ile değiştirilir.

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

Erişim belirteci alma

Microsoft Entra belirteçleri hakkında daha fazla bilgi için Bkz. Microsoft Entra öğreticisi.

PowerShell kullanma

# This script acquires the App Context Token and stores it in the variable $token for later use in the script.
# Paste your Tenant ID, App ID, and App Secret (App key) into the indicated quotes below.

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

$sourceAppIdUri = 'https://api.securitycenter.microsoft.com/.default'
$oAuthUri = "https://login.microsoftonline.com/$TenantId/oauth2/v2.0/token"
$authBody = [Ordered] @{
    scope = "$sourceAppIdUri"
    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
$token

C# kullanın:

Aşağıdaki kod NuGet Microsoft.Identity.Client 3.19.8 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.

  1. Yeni bir konsol uygulaması oluşturun.

  2. NuGet Microsoft.Identity.Client'ı yükleyin.

  3. Aşağıdakileri ekleyin:

    using Microsoft.Identity.Client;
    
  4. Aşağıdaki kodu kopyalayıp uygulamanıza yapıştırın (üç değişkeni güncelleştirmeyi unutmayın: tenantId, appId, 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

Bkz. Python kullanarak belirteç alma.

Curl kullanma

Not

Aşağıdaki yordamda, Windows için Curl'un bilgisayarınızda zaten yüklü olduğu varsayılır.

  1. Bir komut istemi açın ve Azure uygulama kimliğinize ayarlayın CLIENT_ID .

  2. Azure uygulama gizli dizinize ayarlayın CLIENT_SECRET .

  3. Uç Nokta için Defender'a erişmek için uygulamanızı kullanmak isteyen müşterinin Azure kiracı kimliğine ayarlayın TENANT_ID .

  4. 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
    

    Aşağıdaki kod parçacığına benzer bir yanıt 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ızdan emin olun:

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

  2. İstediğiniz izinlere sahip bir rol talebi aldığınızdan doğrulayın.

    Aşağıdaki görüntüde, Uç Nokta için Microsoft Defender'ın tüm rollerine yönelik izinlere sahip bir uygulamadan alınan kodu çözülen belirteci görebilirsiniz:

    Belirteç ayrıntıları bölümü

Uç Nokta IÇIN Microsoft Defender API'sine erişmek için belirteci kullanma

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

  2. Gönderdiğiniz Bearer {token} istekte http yetkilendirme üst bilgisini ayarlayın (Taşıyıcı, yetkilendirme şemasıdır).

  3. Belirtecin süre sonu bir saattir. Aynı belirteçle birden fazla istek gönderebilirsiniz.

Aşağıda , C# kullanarak uyarıların listesini almak için istek gönderme örneği 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 etkileşime geçin: Uç Nokta için Microsoft Defender Teknoloji Topluluğu.