تلقي إخطار Key valut والاستجابة له مع خطوط شبكة أحداث Azure

يتيح تكامل Azure Key Vault مع خطوط شبكة أحداث Azure إخطار المستخدم عند تغيير حالة السر المخزن في key Vault. لنظرة عامة حول هذه الميزة، راجع مراقبة Key Vault مع خطوط شبكة الأحداث.

يصف هذا الدليل كيفية تلقي إخطارات Key Vault من خلال خطوط شبكة الأحداث وكيفية الاستجابة إلى تغييرات الحالة من خلال Azure Automation.

المتطلبات الأساسية

المفاهيم

خطوط شبكة أحداث Azure هي خدمة أحداث للسحابة. باتباع الخطوات الواردة في هذا الدليل، ستشترك في أحداث Key Vault وتوجيه الأحداث إلى التنفيذ التلقائي. عندما يكون أحد الأسرار في Key Valut على وشك انتهاء الصلاحية (المعرفة قبل 30 يومًا من تاريخ انتهاء الصلاحية)، يتم إخبار خطوط شبكة الأحداث بتغيير الحالة، كما تقوم بإجراء HTTP POST إلى نقطة النهاية. ثم يقوم إخطار على الويب بتشغيل التنفيذ التلقائي للبرنامج النصي PowerShell.

المخطط الانسيابي لـ HTTP POST

إنشاء حساب تلقائي

إنشاء حساب التشغيل التلقائي في مدخل Microsoft Azure:

  1. انتقل إلى portal.azure.com وسجل الدخول لاشتراكك.

  2. في مربع البحث، أدخل حسابات التشغيل التلقائي.

  3. ضمن قسم الخدمات في القائمة المنسدلة على شريط البحث، حدد حسابات التشغيل التلقائي.

  4. حدد ⁧⁩إضافة⁧⁩.

    جزء حسابات التشغيل التلقائي

  5. أدخل المعلومات المطلوبة في جزء إضافة حساب التشغيل التلقائي ثم حدد إنشاء.

إنشاء دفتر تشغيل

بعد أن يكون حساب التشغيل التلقائي جاهزًا، أنشئ دفتر التشغيل.

إنشاء واجهة مستخدم دفتر تشغيل

  1. حدد حساب التنفيذ التلقائي الذي أنشأته.

  2. حدد سجلات التشغيل ضمن التشغيل التلقائي للعملية.

  3. حدد "Create a runbook" .

  4. حدد اسم دفتر التشغيل وحدد PowerShell كنوع دفتر التشغيل.

  5. حدد دفتر التشغيل الذي أنشأته ثم حدد زر تحرير.

  6. أدخل التعليمات البرمجية التالية (لأغراض الاختبار) وحدد زر نشر. يعيد هذا الإجراء إرجاع نتيجة طلب POST المتلقاة.

param
(
[Parameter (Mandatory = $false)]
[object] $WebhookData
)

#If runbook was called from Webhook, WebhookData will not be null.
if ($WebhookData) {

#rotate secret:
#generate new secret version in key vault
#update db/service with generated secret

#Write-Output "WebhookData <$WebhookData>"
Write-Output $WebhookData.RequestBody
}
else
{
# Error
write-Error "No input data found." 
}

انشر واجهة مستخدم دفتر التشغيل

إنشاء إخطار على الويب

إنشاء إخطار على الويب لتشغيل دفتر التشغيل المنشأ حديثًا.

  1. حدد Webhooks من قسم الموارد في دفتر التشغيل الذي نشرته.

  2. حدد إضافة إخطار على الويب.

    إضافة زر إخطار على الويب

  3. حدد إنشاء إخطار على الويب حديث.

  4. حدد اسم الإخطار على الويب ثم عين تاريخ انتهاء الصلاحية، وانسخ عنوان موقع الويب.

    هام

    لا يمكنك عرض عنوان موقع الويب بعد إنشائه. تأكد من حفظ نسخة في موقع آمن حيث يمكنك الوصول إليها للمتبقي من هذا الدليل.

  5. حدد المعلمات ثم تشغيل الإعدادات ثم حدد موافق. لا تدخل أي معلمات. سيتم تمكين الزر إنشاء .

  6. حدد موافق، ثم حدد إنشاء.

    إنشاء واجهة مستخدم إخطار على الويب جديدة

إنشاء اشتراك "شبكة الأحداث"

الانتقال إلى إضافة اشتراك خطوط شبكة الحدث في مدخل Microsoft Azure.

  1. انتقل إلى Key Valut وحدد علامة التبويب الأحداث.

    علامة تبويب الأحداث في مدخل Microsoft Azure

  2. حدد زراشتراك حدث.

  3. إنشاء اسم وصفي للاشتراك.

  4. اختر مخطط خطوط شبكة الأحداث.

  5. يجب أن يكون مورد الموضوع هو Key Vault التي تريد مراقبتها للتغييرات في الحالة.

  6. بالنسبة إلى تصفية إلى أنواع الأحداث، اترك كافة الخيارات محددة (9 محددة).

  7. بالنسبة إلى ⁧⁩نوع نقطة النهاية⁧⁩، حدد⁧⁩Webhook⁧⁩.

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

  9. حدد تأكيد التحديد في جزء السياق.

  10. حدد "Create".

    إنشاء اشتراك حدث

الاختبار والتحقق

تحقق من تكوين اشتراك خطوط شبكة الأحداث بشكل صحيح. يفترض هذا الاختبار أنك اشتركت في إخبار "إنشاء نسخة جديدة من السر" في اشتراك إنشاء خطوط شبكة أحداث، وأن لديك الأذونات اللازمة لإنشاء إصدار جديد من سر في Key Valut.

اختبار تكوين اشتراك خطوط شبكة الأحداث

إنشاء جزء بيانات سرية

  1. انتقل إلى Key Valut الخاص بك على مدخل Microsoft Azure.

  2. أنشئ بيانات سرية جديدة. لأغراض الاختبار، عين انتهاء الصلاحية إلى اليوم التالي.

  3. في علامة التبويب الأحداث في Key Valut، حدد اشتراك خطوط شبكة الأحداث الذي أنشأته.

  4. ضمن المقاييس، تحقق مما إذا كان قد التقط حدث أم لا. من المتوقع وقوع حدثين: SecretNewVersion وS secretNearExpiry. تتحقق هذه الأحداث من أن خطوط شبكة الأحداث نجحت في التقاط تغيير حالة السر في Key Valut.

    جزء المقاييس: فحص الأحداث الملتقطة

  5. انقل حساب التشغيل التلقائي الخاص بك.

  6. حدد تبويب دفاتر التشغيل ثم حدد دفتر التشغيل الذي أنشأته.

  7. حدد علامة التبويب إخطارات على الويب ثم تأكد من أن آخر تشغيل طابع الزمن منذ 60 ثانية بعد إنشاء سر جديد. تؤكد هذه النتيجة أن خطوط شبكة الأحداث قامت بعمل POST إلى إخطار على الويب مع تفاصيل الحدث لتغيير الحالة في Key Valut الخاص بك وأنه تم تشغيل إخطار على الويب.

    علامة التبويب إخطار على الويب لآخر طابع زمني تم تشغيله

  8. ارجع إلى دفتر التشغيل وحدد علامة تبويب نظرة عامة.

  9. انظر إلى قائمة الوظائف الأخيرة. يجب أن ترى إنشاء الوظيفة وأن الحالة قد اكتملت. وهذا يؤكد أن الإخطار على الويب شغل دفتر التشغيل لبدء تنفيذ البرنامج النصي الخاص به.

    قائمة وظائف إخطار على الويب الأخيرة

  10. حدد الوظيفة الأخيرة ثم انظر إلى طلب POST الذي أرسل من خطوط شبكة الأحداث إلى الإخطار على الويب. فحص JSON وتأكد من أن معلمات Key Valut الخاصة بك ونوع الحدث صحيحة. إذا تطابقت المعلمة "نوع الحدث" في عنصر JSON الذي حدث في قبو Key Valut (في هذا المثال، Microsoft.KeyVault.SecretNearExpiry)، إذًا نجح الاختبار.

استكشاف الأخطاء وإصلاحها

لا تستطيع إنشاء اشتراك حدث

إعادة تسجيل خطوط شبكة الأحداث وموفر Key Valut في موفري موارد اشتراك Azure. راجع موفرو موارد Azure وأنواعها.

الخطوات التالية

تهانينا! إذا كنت قد اتبعت كل الخطوات بشكل صحيح، فأنت الآن على استعداد للاستجابة برمجيًا لتغييرات حالة الأسرار المخزنة في Key Valut.

إذا كنت تستخدم نظامًا قائمًا على الاستقصاء للبحث عن تغييرات حالة الأسرار في Key Valuts، يمكنك الآن البدء في استخدام ميزة الإخطار هذه. يمكنك أيضًا استبدال البرنامج النصي للاختبار في دفتر التشغيل الخاص بك برمز لتجديد أسرارك برمجيًا عندما تكون على وشك انتهاء صلاحيتها.

تعرّف على المزيد: