إنشاء تطبيق للوصول إلى Microsoft Defender لنقطة النهاية دون مستخدم
ينطبق على:
- الخطة 1 من Microsoft Defender لنقطة النهاية
- Defender for Endpoint الخطة 2
- Microsoft Defender for Business
هام
لا يتم تضمين قدرات التتبع المتقدمة في Defender for Business.
هل تريد تجربة Defender لنقطة النهاية؟ التسجيل للحصول على إصدار تجريبي مجاني.
ملاحظة
إذا كنت أحد عملاء حكومة الولايات المتحدة، فالرجاء استخدام معرفات URI المدرجة في Microsoft Defender لنقطة النهاية لعملاء حكومة الولايات المتحدة.
تلميح
للحصول على أداء أفضل، يمكنك استخدام الخادم الأقرب إلى موقعك الجغرافي:
- 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
- ina.api.security.microsoft.com
توضح هذه الصفحة كيفية إنشاء تطبيق للحصول على وصول برمجي إلى Defender لنقطة النهاية دون مستخدم. إذا كنت بحاجة إلى وصول برمجي إلى Defender لنقطة النهاية نيابة عن مستخدم، فشاهد الحصول على الوصول باستخدام سياق المستخدم. إذا لم تكن متأكدا من الوصول الذي تحتاجه، فشاهد بدء الاستخدام.
يعرض Microsoft Defender لنقطة النهاية الكثير من بياناته وإجراءاته من خلال مجموعة من واجهات برمجة التطبيقات البرمجية. ستساعدك واجهات برمجة التطبيقات هذه على أتمتة تدفقات العمل والابتكار استنادا إلى قدرات Defender لنقطة النهاية. يتطلب الوصول إلى واجهة برمجة التطبيقات مصادقة OAuth2.0. لمزيد من المعلومات، راجع تدفق رمز التخويل OAuth 2.0.
بشكل عام، ستحتاج إلى اتخاذ الخطوات التالية لاستخدام واجهات برمجة التطبيقات:
- إنشاء تطبيق Microsoft Entra.
- احصل على رمز مميز للوصول باستخدام هذا التطبيق.
- استخدم الرمز المميز للوصول إلى Defender لواجهة برمجة تطبيقات نقطة النهاية.
تشرح هذه المقالة كيفية إنشاء تطبيق Microsoft Entra، والحصول على رمز مميز للوصول إلى Microsoft Defender لنقطة النهاية، والتحقق من صحة الرمز المميز.
هام
توصي Microsoft باستخدام الأدوار ذات الأذونات القليلة. يساعد ذلك في تحسين الأمان لمؤسستك. يعتبر المسؤول العام دورا متميزا للغاية يجب أن يقتصر على سيناريوهات الطوارئ عندما لا يمكنك استخدام دور موجود.
إنشاء تطبيق
سجل الدخول إلى مدخل Microsoft Azure باستخدام مستخدم لديه دور المسؤول العام.
انتقل إلى Microsoft Entra ID>App registrationsNew registrations>.
في نموذج التسجيل، اختر اسما للتطبيق الخاص بك، ثم حدد تسجيل.
لتمكين تطبيقك من الوصول إلى Defender for Endpoint وتعيين إذن "Read all alerts" ، في صفحة التطبيق، حدد API Permissions>Add permission>APIs التي تستخدمها> مؤسستي، واكتب WindowsDefenderATP، ثم حدد WindowsDefenderATP.
ملاحظة
WindowsDefenderATP
لا يظهر في القائمة الأصلية. ابدأ بكتابة اسمه في مربع النص لرؤيتها تظهر.حدد Application permissions>Alert.Read.All، ثم حدد Add permissions.
حدد الأذونات المناسبة.
Read All Alerts
هو مجرد مثال. فيما يلي بعض الأمثلة:-
لتشغيل الاستعلامات المتقدمة، حدد
Run advanced queries
الإذن . -
لعزل جهاز، حدد
Isolate machine
الإذن. - لتحديد الإذن الذي تحتاجه، انظر إلى قسم الأذونات في واجهة برمجة التطبيقات التي ترغب في الاتصال بها.
-
لتشغيل الاستعلامات المتقدمة، حدد
حدد منح الموافقة.
ملاحظة
في كل مرة تضيف فيها إذنا، يجب عليك تحديد منح الموافقة حتى يصبح الإذن الجديد ساري المفعول.
لإضافة سر إلى التطبيق، حدد Certificates & secrets، وأضف وصفا إلى السر، ثم حدد Add.
ملاحظة
بعد تحديد إضافة، حدد نسخ القيمة السرية التي تم إنشاؤها. لن تتمكن من استرداد هذه القيمة بعد المغادرة.
اكتب معرف التطبيق ومعرف المستأجر الخاص بك. في صفحة التطبيق، انتقل إلى نظرة عامة وانسخ ما يلي.
لشركاء Microsoft Defender لنقطة النهاية فقط. قم بتعيين تطبيقك ليكون متعدد المستأجرين (متوفر في جميع المستأجرين بعد الموافقة). هذا مطلوب لتطبيقات الجهات الخارجية (على سبيل المثال، إذا قمت بإنشاء تطبيق مخصص للتشغيل في مستأجر عملاء متعددين). هذا غير مطلوب إذا قمت بإنشاء خدمة تريد تشغيلها في المستأجر الخاص بك فقط (على سبيل المثال، إذا قمت بإنشاء تطبيق لاستخدامك الخاص الذي سيتفاعل فقط مع بياناتك الخاصة). لتعيين تطبيقك ليكون متعدد المستأجرين، اتبع الخطوات التالية:
انتقل إلى المصادقة، وأضف
https://portal.azure.com
ك عنوان URI لإعادة التوجيه.في أسفل الصفحة، ضمن أنواع الحسابات المدعومة، حدد الحسابات في أي موافقة تطبيق دليل تنظيمي لتطبيقك متعدد المستأجرين.
تحتاج إلى الموافقة على طلبك في كل مستأجر حيث تنوي استخدامه. وذلك لأن تطبيقك يتفاعل مع Defender لنقطة النهاية نيابة عن عميلك.
تحتاج أنت (أو عميلك إذا كنت تكتب تطبيقا تابعا لجهة خارجية) إلى تحديد ارتباط الموافقة والموافقة على تطبيقك. يجب أن تتم الموافقة مع مستخدم لديه امتيازات إدارية في 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-0000-000000000000
يتم استبدال بمعرف التطبيق الخاص بك.
منجز! لقد قمت بتسجيل طلب بنجاح! راجع الأمثلة أدناه للحصول على الرمز المميز والتحقق من صحته.
الحصول على رمز مميز للوصول
لمزيد من المعلومات حول الرموز المميزة ل 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
$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#:
تم اختبار التعليمات البرمجية التالية مع NuGet Microsoft.Identity.Client 3.19.8.
هام
تم إهمال حزمة Microsoft.IdentityModel.Clients.ActiveDirectory NuGet ومكتبة مصادقة Azure AD (ADAL). لم تتم إضافة ميزات جديدة منذ 30 يونيو 2020. نحن نشجعك بشدة على الترقية، راجع دليل الترحيل لمزيد من التفاصيل.
إنشاء تطبيق وحدة تحكم جديد.
تثبيت NuGet Microsoft.Identity.Client.
أضف ما يلي:
using Microsoft.Identity.Client;
انسخ التعليمات البرمجية التالية والصقها في تطبيقك (لا تنس تحديث المتغيرات الثلاثة:
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
راجع الحصول على الرمز المميز باستخدام Python.
استخدام Curl
ملاحظة
يفترض الإجراء التالي أن Curl for Windows مثبت بالفعل على الكمبيوتر الخاص بك.
افتح موجه الأوامر، واضبط
CLIENT_ID
على معرف تطبيق Azure.قم بتعيين
CLIENT_SECRET
إلى سر تطبيق Azure الخاص بك.قم بتعيين
TENANT_ID
إلى معرف مستأجر Azure للعميل الذي يريد استخدام تطبيقك للوصول إلى Defender لنقطة النهاية.قم بتنفيذ الأمر التالي:
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
تحصل على إجابة تشبه القصاصة البرمجية التالية:
{"token_type":"Bearer","expires_in":3599,"ext_expires_in":0,"access_token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIn <truncated> aWReH7P0s0tjTBX8wGWqJUdDA"}
التحقق من صحة الرمز المميز
تأكد من حصولك على الرمز المميز الصحيح:
انسخ والصق الرمز المميز الذي حصلت عليه في الخطوة السابقة في JWT من أجل فك ترميزه.
تحقق من حصولك على مطالبة أدوار بالأذونات المطلوبة.
في الصورة التالية، يمكنك مشاهدة رمز مميز تم فك ترميزه تم الحصول عليه من تطبيق لديه أذونات لجميع أدوار Microsoft Defender لنقطة النهاية:
استخدام الرمز المميز للوصول إلى Microsoft Defender لواجهة برمجة تطبيقات نقطة النهاية
اختر واجهة برمجة التطبيقات التي تريد استخدامها. لمزيد من المعلومات، راجع واجهات برمجة تطبيقات Defender لنقطة النهاية المدعومة.
قم بتعيين عنوان التخويل في الطلب الذي
http
ترسله إلىBearer {token}
(Bearer هو نظام التخويل).وقت انتهاء صلاحية الرمز المميز هو ساعة واحدة. يمكنك إرسال أكثر من طلب واحد بنفس الرمز المميز.
فيما يلي مثال على إرسال طلب للحصول على قائمة بالتنبيهات باستخدام C#:
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
راجع أيضًا
- واجهات Microsoft Defender لنقطة النهاية برمجة التطبيقات المعتمدة
- الوصول إلى Microsoft Defender لنقطة النهاية نيابة عن مستخدم
تلميح
هل تريد معرفة المزيد؟ التفاعل مع مجتمع أمان Microsoft في مجتمع التكنولوجيا لدينا: Microsoft Defender for Endpoint Tech Community.