Aracılığıyla paylaş


Kullanıcı bağlamıyla Microsoft Defender for Cloud Apps API'ye erişme

Bu sayfada, kullanıcı adına Defender for Cloud Apps program aracılığıyla erişim elde etmek için bir uygulamanın nasıl oluşturulacağı açıklanır.

Kullanıcı olmadan programlı erişime Microsoft Defender for Cloud Apps ihtiyacınız varsa, uygulama bağlamıyla Erişim Microsoft Defender for Cloud Apps'ne bakın.

Hangi erişime ihtiyacınız olduğundan emin değilseniz Giriş sayfasını okuyun.

Microsoft Defender for Cloud Apps, 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 Microsoft Defender for Cloud Apps özelliklerine göre yenilik yapmanızı sağlar. 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:

  • Microsoft Entra uygulaması oluşturma
  • Bu uygulamayı kullanarak erişim belirteci alma
  • Defender for Cloud Apps API'ye erişmek için belirteci kullanma

Bu sayfada bir Microsoft Entra uygulaması oluşturma, Microsoft Defender for Cloud Apps için erişim belirteci alma ve belirteci doğrulama açıklanmaktadır.

Not

Kullanıcı adına Microsoft Defender for Cloud Apps API'sine erişirken doğru Uygulama iznine ve kullanıcı iznine ihtiyacınız olacaktır. Microsoft Defender for Cloud Apps kullanıcı izinlerini tanımıyorsanız bkz. Yönetici erişimini yönetme.

İpucu

Portalda bir eylem gerçekleştirme izniniz varsa, eylemi API'de gerçekleştirme izniniz vardır.

Uygulama oluşturma

  1. Microsoft Entra yönetim merkezi yeni bir uygulama kaydedin. Daha fazla bilgi için bkz. Hızlı Başlangıç: Uygulamayı Microsoft Entra yönetim merkezi kaydetme.

  2. Uygulamayı kaydet sayfası görüntülendiğinde, uygulamanızın kayıt bilgilerini girin:

    • Ad - Uygulamanın kullanıcılarına gösterilen anlamlı bir uygulama adı girin.

    • Desteklenen hesap türleri - Uygulamanızın hangi hesapları desteklemesini istediğinizi seçin.

      Desteklenen hesap türleri Açıklama
      Yalnızca bu kuruluş dizinindeki hesaplar İş kolu (LOB) uygulaması oluşturuyorsanız bu seçeneği belirleyin. Uygulamayı bir dizine kaydetmiyorsanız bu seçenek kullanılamaz.

      Bu seçenek yalnızca Microsoft Entra tek kiracıyla eşlenir.

      Uygulamayı bir dizinin dışına kaydetmediğiniz sürece bu varsayılan seçenektir. Uygulamanın bir dizin dışında kayıtlı olduğu durumlarda, varsayılan olarak çok kiracılı ve kişisel Microsoft hesapları Microsoft Entra.
      Herhangi bir kuruluş dizinindeki hesaplar Tüm iş ve eğitim müşterilerini hedeflemek istiyorsanız bu seçeneği belirleyin.

      Bu seçenek yalnızca Microsoft Entra çok kiracılıya eşler.

      Uygulamayı yalnızca Microsoft Entra tek kiracı olarak kaydettiyseniz, çok kiracılı Microsoft Entra olacak şekilde güncelleştirebilir ve Kimlik Doğrulaması bölmesi aracılığıyla tek kiracıya dönebilirsiniz.
      Herhangi bir kuruluş dizinindeki hesaplar ve kişisel Microsoft hesapları En geniş müşteri kümesini hedeflemek için bu seçeneği belirleyin.

      Bu seçenek, çok kiracılı ve kişisel Microsoft Entra Microsoft hesaplarıyla eşler.

      Uygulamayı çok kiracılı ve kişisel Microsoft Entra Microsoft hesapları olarak kaydettiyseniz, bunu kullanıcı arabiriminde değiştiremezsiniz. Bunun yerine, desteklenen hesap türlerini değiştirmek için uygulama bildirim düzenleyicisini kullanmanız gerekir.
    • Yeniden yönlendirme URI'si (isteğe bağlı) - Oluşturduğunuz uygulamanın türünü seçin, **Web veya Genel istemci (mobil & masaüstü) ve ardından uygulamanız için yeniden yönlendirme URI'sini (veya yanıt URL'sini) girin.

      • Web uygulamaları için uygulamanızın temel URL'sini sağlayın. Örneğin, http://localhost:31544 yerel makinenizde çalışan bir web uygulamasının URL'si olabilir. Kullanıcılar bir web istemci uygulamasında oturum açmak için bu URL'yi kullanır.
      • Genel istemci uygulamaları için, belirteç yanıtlarını döndürmek için Microsoft Entra ID tarafından kullanılan URI'yi sağlayın. Uygulamanıza myapp://authözgü gibi bir değer girin.

      Web uygulamalarına veya yerel uygulamalara yönelik belirli örnekleri görmek için hızlı başlangıçlarımıza göz atın.

      İşiniz bittiğinde Kaydet'i seçin.

  3. Uygulamanızın Microsoft Defender for Cloud Apps erişmesine izin verin ve 'Uyarıları okuma' izni atayın:

    • Uygulama sayfanızda API İzinleriKuruluşumun kullandığı>izin> API'leri > ekle'yi seçin, Microsoft Bulut Uygulamaları Güvenliği yazın ve ardından Microsoft Bulut Uygulamaları Güvenliği'ı seçin.

    • Not: Microsoft Bulut Uygulamaları Güvenliği özgün listede görünmez. Görünmesini görmek için metin kutusuna adını yazmaya başlayın. Ürün artık Defender for Cloud Apps olarak adlandırılıyor olsa da bu adı yazdığınızdan emin olun.

      İzin ekleme ekran görüntüsü.

    • Temsilci izinleri>Araştırma'yı seçin.Okuma>İzin ekle'yi seçin

      Uygulama izinleri ekleme ekran görüntüsü.

    • Önemli not: İlgili izinleri seçin. Investigation.Read yalnızca bir örnektir. Diğer izin kapsamları için bkz . Desteklenen izin kapsamları

      • Hangi izne ihtiyacınız olduğunu belirlemek için çağırmak istediğiniz API'deki İzinler bölümünü görüntüleyin.
    • Yönetici onayı ver'i seçin

      Not: İzin eklediğinizde, yeni iznin geçerli olması için Yönetici onayı ver'i seçmeniz gerekir.

      Yönetici izinleri verme işleminin ekran görüntüsü.

  4. Uygulama kimliğinizi ve kiracı kimliğinizi yazın:

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

      Oluşturulan uygulama kimliğinin ekran görüntüsü.

Desteklenen izin kapsamları

İzin adı Açıklama Desteklenen eylemler
Araştırma.okuma Uyarıları kapatma dışında etkinlikler ve uyarılar üzerinde desteklenen tüm eylemleri gerçekleştirin.
IP aralıklarını görüntüleyin, ancak ekleme, güncelleştirme veya silme işlemi yapılmaz.

Tüm varlık eylemlerini gerçekleştirin.
Etkinlik listesi, getirme, geri bildirim
Uyarılar listesi, getirme, okundu/okunmadı olarak işaretleme
Varlıklar listesi, getirme, getirme ağacı
Alt ağ listesi
Araştırma.yönetme Uyarıları ve IP aralıklarını yönetmeye ek olarak tüm investigation.read eylemlerini gerçekleştirin. Etkinlik listesi, getirme, geri bildirim
Uyarılar listesi, getirme, okundu/okunmadı olarak işaretleme, kapatma
Varlıklar listesi, getirme, getirme ağacı
Alt ağ listesi, oluşturma/güncelleştirme/silme
Discovery.read Uyarıları kapatma dışında etkinlikler ve uyarılar üzerinde desteklenen tüm eylemleri gerçekleştirin.
Bulma raporlarını ve kategorilerini listeleyin.
Uyarılar listesi, getirme, okundu/okunmadı olarak işaretleme
Bulma listesi raporları, liste raporu kategorileri
Discovery.manage Discovery.read izinleri
Uyarıları kapatma, bulma dosyalarını karşıya yükleme ve blok betikleri oluşturma
Uyarılar listesi, getirme, okundu/okunmadı olarak işaretleme, kapatma
Bulma listesi raporları, liste raporu kategorileri
Bulma dosyası karşıya yükleme, blok betiği oluşturma
Ayarlar.okuma IP aralıklarını listeleyin. Alt ağ listesi
Ayarlar.yönet IP aralıklarını listeleme ve yönetme. Alt ağ listesi, oluşturma/güncelleştirme/silme

Erişim belirteci alma

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

C kullanma#

  • Uygulamanızda aşağıdaki sınıfı kopyalayın/yapıştırın.
  • Uygulama kimliğiniz, kiracı kimliğiniz ve kimlik doğrulamanızla AcquireUserTokenAsync yöntemini kullanarak belirteç alın.

Not

Aşağıdaki kod örneğinde kullanıcı adı ve parola akışı kullanılarak bir belirtecin nasıl alındığını gösterse de, Microsoft üretim ortamında daha güvenli kimlik doğrulama akışları kullanmanızı önerir.

namespace MDA
{
    using System.Net.Http;
    using System.Text;
    using System.Threading.Tasks;
    using Newtonsoft.Json.Linq;

    public static class MDAUtils
    {
        private const string Authority = "https://login.microsoftonline.com";

        private const string MDAId = "05a65629-4c1b-48c1-a78b-804c4abdd4af";
        private const string Scope = "Investigation.read";

        public static async Task<string> AcquireUserTokenAsync(string username, string password, string appId, string tenantId)
        {
            using (var httpClient = new HttpClient())
            {
                var urlEncodedBody = $"scope={MDAId}/{Scope}&client_id={appId}&grant_type=password&username={username}&password={password}";

                var stringContent = new StringContent(urlEncodedBody, Encoding.UTF8, "application/x-www-form-urlencoded");

                using (var response = await httpClient.PostAsync($"{Authority}/{tenantId}/oauth2/token", stringContent).ConfigureAwait(false))
                {
                    response.EnsureSuccessStatusCode();

                    var json = await response.Content.ReadAsStringAsync().ConfigureAwait(false);

                    var jObject = JObject.Parse(json);

                    return jObject["access_token"].Value<string>();
                }
            }
        }
    }
} 

Belirteci doğrulama

Doğru belirteci kullandığınızdan emin olmak için doğrulayın:

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

  • İstenen uygulama izinleriyle bir 'scp' talebi aldığınızdan doğrulama

  • Aşağıdaki ekran görüntüsünde, öğreticide uygulamadan alınan kodu çözülen bir belirteci görebilirsiniz:

    Belirteç doğrulamanın ekran görüntüsü.

Microsoft Defender for Cloud Apps API'sine erişmek için belirteci kullanma

  • Kullanmak istediğiniz API'yi seçin. Daha fazla bilgi için bkz. API Defender for Cloud Apps.

  • Gönderdiğiniz HTTP isteğinde Yetkilendirme üst bilgisini "Taşıyıcı {token}" olarak ayarlayın (Taşıyıcı, Yetkilendirme şemasıdır)

  • Belirtecin Süre sonu 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

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

Ayrıca bkz.