مشاركة عبر


الوصول Microsoft Defender for Cloud Apps مع سياق التطبيق

توضح هذه الصفحة كيفية إنشاء تطبيق للحصول على وصول برمجي إلى Defender for Cloud Apps بدون مستخدم. إذا كنت بحاجة إلى وصول برمجي إلى Defender for Cloud Apps نيابة عن مستخدم، فشاهد الحصول على الوصول باستخدام سياق المستخدم. إذا لم تكن متأكدا من الوصول الذي تحتاجه، فشاهد صفحة إدارة الرموز المميزة لواجهة برمجة التطبيقات .

تعرض Microsoft Defender for Cloud Apps الكثير من بياناتها وإجراءاتها من خلال مجموعة من واجهات برمجة التطبيقات البرمجية. تساعدك واجهات برمجة التطبيقات هذه على أتمتة تدفقات العمل والابتكار استنادا إلى قدرات Defender for Cloud Apps. يتطلب الوصول إلى واجهة برمجة التطبيقات مصادقة OAuth2.0. لمزيد من المعلومات، راجع تدفق رمز التخويل OAuth 2.0.

بشكل عام، تحتاج إلى اتخاذ الخطوات التالية لاستخدام واجهات برمجة التطبيقات:

  • إنشاء تطبيق Microsoft Entra.
  • احصل على رمز مميز للوصول باستخدام هذا التطبيق.
  • استخدم الرمز المميز للوصول إلى Defender for Cloud Apps API.

تشرح هذه المقالة كيفية إنشاء تطبيق Microsoft Entra، والحصول على رمز مميز للوصول إلى Microsoft Defender for Cloud Apps، والتحقق من صحة الرمز المميز.

إنشاء تطبيق Defender for Cloud Apps

  1. في مركز مسؤولي Microsoft Entra، سجل تطبيقا جديدا. لمزيد من المعلومات، راجع التشغيل السريع: تسجيل تطبيق مع مركز مسؤولي Microsoft Entra.

  2. لتمكين تطبيقك من الوصول إلى Defender for Cloud Apps وتعيين إذن "قراءة جميع التنبيهات"، في صفحة التطبيق، حدد أذونات واجهة برمجة التطبيقات إضافة واجهات> برمجة تطبيقاتالأذونات>التي تستخدمها> مؤسستي، واكتب Microsoft أمان التطبيقات على السحابة، ثم حدد Microsoft أمان التطبيقات على السحابة.

    ملاحظة

    لا يظهر Microsoft أمان التطبيقات على السحابة في القائمة الأصلية. ابدأ بكتابة اسمه في مربع النص لرؤيتها تظهر. تأكد من كتابة هذا الاسم، على الرغم من أن المنتج يسمى الآن Defender for Cloud Apps.

    لقطة شاشة لإضافة إذن.

    • حدد Application permissions>Investigation.Read، ثم حدد Add permissions.

      لقطة شاشة لإضافة إذن التطبيق.

      تحتاج إلى تحديد الأذونات ذات الصلة. التحقيق.القراءة هي مثال فقط. للحصول على نطاقات الأذونات الأخرى، راجع نطاقات الأذونات المدعومة

      • لتحديد الإذن الذي تحتاجه، انظر إلى قسم الأذونات في واجهة برمجة التطبيقات التي ترغب في الاتصال بها.
  3. حدد منح موافقة المسؤول.

    ملاحظة

    في كل مرة تضيف فيها إذنا، يجب تحديد منح موافقة المسؤول حتى يصبح الإذن الجديد ساري المفعول.

    لقطة شاشة لمنح أذونات المسؤول.

  4. لإضافة سر إلى التطبيق، حدد Certificates & secrets، وحدد New client secret، وأضف وصفا إلى السر، ثم حدد Add.

    ملاحظة

    بعد تحديد إضافة، حدد نسخ القيمة السرية التي تم إنشاؤها. لن تتمكن من استرداد هذه القيمة بعد المغادرة.

    لقطة شاشة لإنشاء مفتاح تطبيق.

  5. اكتب معرف التطبيق ومعرف المستأجر الخاص بك. في صفحة التطبيق الخاص بك، انتقل إلى نظرة عامة وانسخ معرف التطبيق (العميل)ومعرف الدليل (المستأجر).

    لقطة شاشة لمعرف التطبيق الذي تم إنشاؤه.

  6. للشركاء Microsoft Defender for Cloud Apps فقط. قم بتعيين تطبيقك ليكون متعدد المستأجرين (متوفر في جميع المستأجرين بعد الموافقة). هذا مطلوب لتطبيقات الجهات الخارجية (على سبيل المثال، إذا قمت بإنشاء تطبيق مخصص للتشغيل في مستأجر عملاء متعددين). هذا غير مطلوب إذا قمت بإنشاء خدمة تريد تشغيلها في المستأجر الخاص بك فقط (على سبيل المثال، إذا قمت بإنشاء تطبيق لاستخدامك الخاص الذي سيتفاعل فقط مع بياناتك الخاصة). لتعيين تطبيقك ليكون متعدد المستأجرين:

    • انتقل إلى المصادقة، وأضف https://portal.azure.com ك عنوان URI لإعادة التوجيه.

    • في أسفل الصفحة، ضمن أنواع الحسابات المدعومة، حدد الحسابات في أي موافقة تطبيق دليل تنظيمي لتطبيقك متعدد المستأجرين.

    تحتاج إلى الموافقة على طلبك في كل مستأجر حيث تنوي استخدامه. وذلك لأن تطبيقك يتفاعل Defender for Cloud Apps نيابة عن عميلك.

    تحتاج أنت (أو عميلك إذا كنت تكتب تطبيقا تابعا لجهة خارجية) إلى تحديد ارتباط الموافقة والموافقة على تطبيقك. يجب أن تتم الموافقة مع مستخدم لديه امتيازات إدارية في Active Directory.

    يتم تشكيل ارتباط الموافقة على النحو التالي:

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

    حيث يتم استبدال 00000000-0000-0000-00000000000 بمعرف التطبيق الخاص بك.

منجز! لقد سجلت تطبيقا بنجاح! راجع الأمثلة أدناه للحصول على الرمز المميز والتحقق من صحته.

نطاقات الأذونات المدعومة

اسم الإذن الوصف الإجراءات المدعومة
التحقيق.القراءة تنفيذ جميع الإجراءات المدعومة على الأنشطة والتنبيهات باستثناء إغلاق التنبيهات.
عرض نطاقات IP ولكن لا يمكنك إضافتها أو تحديثها أو حذفها.

تنفيذ جميع إجراءات الكيانات.
قائمة الأنشطة والإحضار والملاحظات
قائمة التنبيهات، الإحضار، وضع علامة كمقروءة/غير مقروءة
قائمة الكيانات، والإحضار، وجلب الشجرة
قائمة الشبكة الفرعية
التحقيق.الإدارة تنفيذ جميع إجراءات investigation.read بالإضافة إلى إدارة التنبيهات ونطاقات IP. قائمة الأنشطة والإحضار والملاحظات
قائمة التنبيهات، الإحضار، وضع علامة كمقروء/غير مقروء، إغلاق
قائمة الكيانات، والإحضار، وجلب الشجرة
قائمة الشبكة الفرعية، إنشاء/تحديث/حذف
Discovery.read تنفيذ جميع الإجراءات المدعومة على الأنشطة والتنبيهات باستثناء إغلاق التنبيهات.
سرد تقارير الاكتشاف والفئات.
قائمة التنبيهات، الإحضار، وضع علامة كمقروءة/غير مقروءة
تقارير قائمة الاكتشافات وفئات تقارير القوائم
Discovery.manage أذونات Discovery.read
إغلاق التنبيهات وتحميل ملفات الاكتشاف وإنشاء برامج نصية للكتلة
قائمة التنبيهات، الإحضار، وضع علامة كمقروء/غير مقروء، إغلاق
تقارير قائمة الاكتشافات وفئات تقارير القوائم
اكتشاف تحميل الملفات وإنشاء برنامج نصي للكتلة
الإعدادات.القراءة سرد نطاقات IP. قائمة الشبكة الفرعية
Settings.manage سرد نطاقات IP وإدارتها. قائمة الشبكة الفرعية، إنشاء/تحديث/حذف

الحصول على رمز مميز للوصول

لمزيد من المعلومات حول الرموز المميزة Microsoft Entra، راجع البرنامج التعليمي Microsoft Entra.

استخدام PowerShell

# 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

$resourceAppIdUri = '05a65629-4c1b-48c1-a78b-804c4abdd4af'
$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

استخدام C#‎

تم اختبار التعليمات البرمجية التالية باستخدام NuGet Microsoft.Identity.Client 4.47.2.

  1. إنشاء تطبيق وحدة تحكم جديد.

  2. تثبيت NuGet Microsoft.Identity.Client.

  3. أضف ما يلي:

    using Microsoft.Identity.Client;
    
  4. انسخ التعليمات البرمجية التالية والصقها في تطبيقك (لا تنس تحديث المتغيرات الثلاثة: tenantId, appId, appSecret):

    string tenantId = "00000000-0000-0000-0000-000000000000"; // Paste your own tenant ID here
    string appId = "00001111-aaaa-2222-bbbb-3333cccc4444"; // 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 = "05a65629-4c1b-48c1-a78b-804c4abdd4af";
    
    IConfidentialClientApplication myApp = ConfidentialClientApplicationBuilder.Create(appId).WithClientSecret(appSecret).WithAuthority($"{authority}/{tenantId}").Build();
    
    List scopes = new List() { $"{audience}/.default" };
    
    AuthenticationResult authResult = myApp.AcquireTokenForClient(scopes).ExecuteAsync().GetAwaiter().GetResult();
    
    string token = authResult.AccessToken;
    

استخدام Python

راجع مكتبة مصادقة Microsoft (MSAL) ل Python.

استخدام Curl

ملاحظة

يفترض الإجراء التالي أن Curl for Windows مثبت بالفعل على الكمبيوتر الخاص بك.

  1. افتح موجه الأوامر، وقم بتعيين CLIENT_ID إلى معرف تطبيق Azure.
  2. قم بتعيين CLIENT_SECRET إلى سر تطبيق Azure الخاص بك.
  3. قم بتعيين TENANT_ID إلى معرف مستأجر Azure للعميل الذي يريد استخدام تطبيقك للوصول إلى Defender for Cloud Apps.
  4. قم بتنفيذ الأمر التالي:
curl -i -X POST -H "Content-Type:application/x-www-form-urlencoded" -d "grant_type=client_credentials" -d "client_id=%CLIENT_ID%" -d "scope=05a65629-4c1b-48c1-a78b-804c4abdd4af/.default" -d "client_secret=%CLIENT_SECRET%" "https://login.microsoftonline.com/%TENANT_ID%/oauth2/v2.0/token" -k

يمكنك الحصول على إجابة في النموذج التالي:

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

التحقق من صحة الرمز المميز

تأكد من حصولك على الرمز المميز الصحيح:

  1. انسخ والصق الرمز المميز الذي حصلت عليه في الخطوة السابقة في JWT من أجل فك ترميزه.
  2. تحقق من حصولك على مطالبة "الأدوار" بالأذونات المطلوبة
  3. في الصورة التالية، يمكنك مشاهدة رمز مميز تم فك ترميزه تم الحصول عليه من تطبيق مع أذونات لجميع الأدوار Microsoft Defender for Cloud Apps:

لقطة شاشة للتحقق من صحة الرمز المميز.

استخدام الرمز المميز للوصول إلى Microsoft Defender for Cloud Apps API

  1. اختر واجهة برمجة التطبيقات التي تريد استخدامها. لمزيد من المعلومات، راجع واجهات برمجة التطبيقات Defender for Cloud Apps.
  2. قم بتعيين عنوان التخويل في طلب http الذي ترسله إلى "Bearer {token}" (Bearer هو نظام التخويل).
  3. وقت انتهاء صلاحية الرمز المميز هو ساعة واحدة. يمكنك إرسال أكثر من طلب واحد بنفس الرمز المميز.

فيما يلي مثال على إرسال طلب للحصول على قائمة بالتنبيهات باستخدام C#‎:

    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

راجع أيضًا