Microsoft Defender لواجهة برمجة تطبيقات نقطة النهاية - Hello World
ينطبق على:
هل تريد تجربة 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
الحصول على التنبيهات باستخدام برنامج PowerShell نصي بسيط
كم من الوقت يستغرق المرور عبر هذا المثال؟
يستغرق الأمر 5 دقائق فقط في خطوتين:
- تسجيل التطبيق
- استخدام الأمثلة: يتطلب فقط نسخ/لصق برنامج PowerShell نصي قصير
هل أحتاج إلى إذن للاتصال؟
بالنسبة لمرحلة تسجيل التطبيق، يجب أن يكون لديك دور المسؤول العام المعين في مستأجر Microsoft Entra.
الخطوة 1 - إنشاء تطبيق في معرف Microsoft Entra
سجّل الدخول إلى مدخل Azure.
انتقل إلى Microsoft Entra ID>App registrationsNew registrations>.
في نموذج التسجيل، اختر اسما للتطبيق الخاص بك ثم حدد تسجيل.
اسمح للتطبيق الخاص بك بالوصول إلى Defender لنقطة النهاية وتعيين إذن "قراءة جميع التنبيهات" :
في صفحة التطبيق الخاص بك، حدد أذونات واجهة برمجة التطبيقات إضافة واجهات> برمجة تطبيقاتالأذونات>التي تستخدمها> مؤسستي اكتب WindowsDefenderATP وحدد WindowsDefenderATP.
ملاحظة
لا يظهر WindowsDefenderATP في القائمة الأصلية. تحتاج إلى البدء في كتابة اسمه في مربع النص لمشاهدته يظهر.
اختر أذونات> التطبيقAlert.Read.All، ثم حدد Add permissions.
هام
تحتاج إلى تحديد الأذونات ذات الصلة. قراءة كل التنبيهات هي مثال فقط.
على سبيل المثال:
- لتشغيل الاستعلامات المتقدمة، حدد إذن "تشغيل الاستعلامات المتقدمة".
- لعزل جهاز، حدد إذن "عزل الجهاز".
- لتحديد الإذن الذي تحتاجه، راجع قسم الأذونات في واجهة برمجة التطبيقات التي ترغب في الاتصال بها.
حدد منح الموافقة.
ملاحظة
في كل مرة تضيف فيها إذنا، يجب النقر فوق منح الموافقة حتى يصبح الإذن الجديد ساري المفعول.
إضافة سر إلى التطبيق.
حدد Certificates & secrets، وأضف وصفا إلى السر وحدد Add.
هام
بعد النقر فوق إضافة، انسخ القيمة السرية التي تم إنشاؤها. لن تتمكن من الاسترداد بعد المغادرة!
اكتب معرف التطبيق ومعرف المستأجر الخاص بك.
في صفحة التطبيق، انتقل إلى نظرة عامة وانسخ ما يلي:
منجز! لقد سجلت تطبيقا بنجاح!
الخطوة 2 - احصل على رمز مميز باستخدام التطبيق واستخدم هذا الرمز المميز للوصول إلى واجهة برمجة التطبيقات.
انسخ البرنامج النصي التالي إلى PowerShell ISE أو إلى محرر نص، واحفظه ك
Get-Token.ps1
.يؤدي تشغيل هذا البرنامج النصي إلى إنشاء رمز مميز وحفظه في مجلد العمل تحت الاسم
Latest-token.txt
.# 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 secret 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
فحص السلامة:
- تشغيل البرنامج النصي.
- في المستعرض، انتقل إلى: https://jwt.ms/.
- انسخ الرمز المميز (محتوى ملف Latest-token.txt).
- الصق في المربع العلوي.
- ابحث عن قسم "الأدوار". ابحث عن دور Alert.Read.All .
لنحصل على التنبيهات!
يستخدم
Get-Token.ps1
البرنامج النصي التالي للوصول إلى واجهة برمجة التطبيقات ويحصل على تنبيهات للساعات ال 48 الماضية.احفظ هذا البرنامج النصي في المجلد نفسه الذي حفظت فيه البرنامج النصي
Get-Token.ps1
السابق .ينشئ البرنامج النصي ملفين (json وcsv) مع البيانات الموجودة في نفس المجلد مثل البرامج النصية.
# Returns Alerts created in the past 48 hours. $token = ./Get-Token.ps1 #run the script Get-Token.ps1 - make sure you are running this script from the same folder of Get-Token.ps1 # Get Alert from the last 48 hours. Make sure you have alerts in that time frame. $dateTime = (Get-Date).ToUniversalTime().AddHours(-48).ToString("o") # The URL contains the type of query and the time filter we create above # Read more about [other query options and filters](get-alerts.md). $url = "https://api.securitycenter.microsoft.com/api/alerts?`$filter=alertCreationTime ge $dateTime" # Set the WebRequest headers $headers = @{ 'Content-Type' = 'application/json' Accept = 'application/json' Authorization = "Bearer $token" } # Send the webrequest and get the results. $response = Invoke-WebRequest -Method Get -Uri $url -Headers $headers -ErrorAction Stop # Extract the alerts from the results. $alerts = ($response | ConvertFrom-Json).value | ConvertTo-Json # Get string with the execution time. We concatenate that string to the output file to avoid overwrite the file $dateTimeForFileName = Get-Date -Format o | foreach {$_ -replace ":", "."} # Save the result as json and as csv $outputJsonPath = "./Latest Alerts $dateTimeForFileName.json" $outputCsvPath = "./Latest Alerts $dateTimeForFileName.csv" Out-File -FilePath $outputJsonPath -InputObject $alerts ($alerts | ConvertFrom-Json) | Export-CSV $outputCsvPath -NoTypeInformation
لقد انتهيت! لقد نجحت في:
- تم الإنشاء والتسجيل والتطبيق
- منح الإذن لهذا التطبيق لقراءة التنبيهات
- توصيل واجهة برمجة التطبيقات
- استخدم برنامج PowerShell النصي لإرجاع التنبيهات التي تم إنشاؤها في الساعات ال 48 الماضية
المقالات ذات الصلة
- واجهات برمجة تطبيقات Microsoft Defender لنقطة النهاية
- الوصول إلى Microsoft Defender لنقطة النهاية باستخدام سياق التطبيق
- الوصول إلى Microsoft Defender لنقطة النهاية باستخدام سياق المستخدم
تلميح
هل تريد معرفة المزيد؟ التفاعل مع مجتمع أمان Microsoft في مجتمع التكنولوجيا لدينا: Microsoft Defender for Endpoint Tech Community.
الملاحظات
https://aka.ms/ContentUserFeedback.
قريبًا: خلال عام 2024، سنتخلص تدريجيًا من GitHub Issues بوصفها آلية إرسال ملاحظات للمحتوى ونستبدلها بنظام ملاحظات جديد. لمزيد من المعلومات، راجعإرسال الملاحظات وعرضها المتعلقة بـ