دليل مطور مخزن Azure Key Vault
يسمح لك Azure Key Vault بالوصول الآمن إلى المعلومات الحساسة من داخل تطبيقاتك:
- تتم حماية المفاتيح والأسرار والشهادات دون الحاجة إلى كتابة التعليمات البرمجية بنفسك، ويمكنك استخدامها بسهولة من تطبيقاتك.
- يمكنك السماح للعملاء بامتلاك وإدارة المفاتيح والأسرار والشهادات الخاصة بهم حتى تتمكن من التركيز على توفير ميزات البرامج الأساسية. وبهذه الطريقة، لن تتحمل تطبيقاتك المسؤولية أو المسؤولية المحتملة عن المفاتيح والأسرار والشهادات الخاصة بعملائك.
- يمكن أن يستخدم تطبيقك مفاتيح للتوقيع والتشفير ومع ذلك يبقي إدارة المفاتيح خارجية عن تطبيقك. لمزيد من المعلومات، راجع «About keys».
- يمكنك إدارة بيانات الاعتماد مثل كلمات المرور ومفاتيح الوصول وعلامات SAS المميزة من خلال تخزينها في Key Vault كأسرار. لمزيد من المعلومات، راجع «About keys».
- إدارة الشهادات. لمزيد من المعلومات، راجع «About certificates».
لمزيد من المعلومات حول Key Vault، راجع «About Azure Key Vault».
المعاينات العامة
نقوم بشكل دوري بإصدار معاينة عامة لميزة Key Vault الجديدة. جرب ميزات المعاينة العامة وأخبرنا بما تفكر به عبر azurekeyvault@microsoft.com، عنوان البريد الإلكتروني الخاص بالملاحظات.
إنشاء key vaults وإدارته
كما هو الحال مع خدمات Azure الأخرى، تتم إدارة Key Vault من خلال Azure Resource Manager. Azure Resource Manager هي خدمة التوزيع والإدارة التي توفرها Azure. يمكنك إستخدامه لإنشاء الموارد وتحديثها وحذفها في حساب Azure الخاص بك.
يتحكم التحكم بالوصول (RBAC) في الوصول إلى طبقة الإدارة، والمعروف أيضا باسم مستوى الإدارة. يمكنك إستخدام مستوى الإدارة في Key Vault لإنشاء وإدارة خزائن المفاتيح وسماتها، وبما في ذلك نهج الوصول. يمكنك إستخدام مستوى البيانات لإدارة المفاتيح والشهادات والأسرار.
يمكنك إستخدام دور مساهم Key Vault المعرف مسبقًا لمنح الإدارة حق الوصول إلى Key Vault.
واجهات برمجة التطبيقات وSDKs لإدارة key vault
Azure CLI | PowerShell | واجهة برمجة تطبيقات REST | Resource Manager | .NET | Python | Java | JavaScript |
---|---|---|---|---|---|---|---|
المرجع التشغيل السريع |
المرجع التشغيل السريع |
المرجع | المرجع التشغيل السريع |
المرجع | المرجع | المرجع | المرجع |
لحزم التثبيت ورمز المصدر، راجع مكتبات العملاء.
المصادقة على Key Vault في التعليمات البرمجية
يستخدم Key Vault مصادقة Microsoft Entra، والتي تتطلب أساس أمان Microsoft Entra لمنح حق الوصول. يمكن أن يكون أساس أمان Microsoft Entra مستخدما أو كيان خدمة تطبيق أو هوية مدارة لموارد Azure أو مجموعة من أي من هذه الأنواع.
أفضل ممارسات المصادقة
نوصي باستخدام هوية مدارة للتطبيقات التي تم نشرها إلى Azure. إذا كنت تستخدم خدمات Azure التي لا تدعم الهويات المدارة أو إذا تم نشر التطبيقات محليًا، فإن أساس الخدمة مع شهادة هو بديل ممكن. في هذا السيناريو، يجب تخزين الشهادة في Key Vault ويتم تدويرها بشكل متكرر.
استخدم خدمة رئيسية مع سر للتطوير واختبار البيئات. استخدم مستخدم أساسي للتطوير المحلي و لـ Azure Cloud Shell.
نوصي بمبادئ الأمان هذه في كل بيئة:
- بيئة الإنتاج: هوية مدارة أو أساس خدمة مزود بشهادة.
- بيئات الاختبار والتطوير: هوية مدارة أو مدير خدمة مزود بشهادة أو مدير خدمة مزود بسر.
- التنمية المحلية: المستخدم الرئيسي أو خدمة رئيسية مع سر.
مكتبات عميل الهوية Azure
يتم دعم سيناريوهات المصادقة السابقة بواسطة مكتبة عميل Azure Identity ويتم دمجها مع Key Vault SDKs. يمكنك إستخدام مكتبة عميل Azure Identity عبر البيئات والأنظمة الأساسية دون تغيير الرمز الخاص بك. تقوم المكتبة باسترداد رموز المصادقة تلقائيًا من المستخدمين الذين تم تسجيل دخولهم إلى مستخدم Azure من خلال Azure CLI و Visual Studio و Visual Studio Code وغيرها من الوسائل.
لمزيد من المعلومات حول مكتبة عميل هوية Azure، راجع:
.NET | Python | Java | JavaScript |
---|---|---|---|
Azure Identity SDK .NET | Azure Identity SDK Python | Azure Identity SDK Java | Azure Identity SDK JavaScript |
إشعار
لقد أوصينا ب مكتبة مصادقة التطبيقات ل Key Vault .NET SDK الإصدار 3، ولكنها الآن مهملة. للترحيل إلى Key Vault .NET SDK الإصدار 4، اتبع AppAuthentication إلى Azure.Identity Migration guidance.
للحصول على تعليمات حول كيفية المصادقة على Key Vault في التطبيقات، راجع:
- استخدام Azure Key Vault مع جهاز ظاهري في .NET
- استخدام Azure Key Vault مع جهاز ظاهري في Python
- استخدم هوية مدارة لتوصيل Key Vault بتطبيق ويب من Azure في .NET
إدارة المفاتيح والشهادات والأسرار
إشعار
تعد SDKs ل .NET وPython وJava وJavaScript وPowerShell وAzure CLI جزءا من عملية إصدار ميزة Key Vault من خلال المعاينة العامة والتوافر العام مع دعم فريق خدمة Key Vault. يتوفر عملاء SDK الآخرون ل Key Vault، ولكن يتم إنشاؤها ودعمها من قبل فرق SDK الفردية عبر GitHub ويتم إصدارها في جدول فرقهم.
يتحكم مستوى البيانات في الوصول إلى المفاتيح والشهادات والأسرار. يمكنك استخدام نهج الوصول المحلي إلى Vault أو Azure RBAC للتحكم في الوصول من خلال لوحة البيانات.
واجهات برمجة التطبيقات وSDKs للمفاتيح
Azure CLI | PowerShell | واجهة برمجة تطبيقات REST | Resource Manager | .NET | Python | Java | JavaScript |
---|---|---|---|---|---|---|---|
المرجع التشغيل السريع |
المرجع التشغيل السريع |
المرجع | المرجع التشغيل السريع |
المرجع التشغيل السريع |
المرجع التشغيل السريع |
المرجع التشغيل السريع |
المرجع التشغيل السريع |
مكتبات أخرى
عميل التشفير ل Key Vault وHSM المدار
توفر هذه الوحدة النمطية عميل تشفير لوحدة عميل Azure Key Vault Keys ل Go.
إشعار
هذا المشروع غير مدعوم من قبل فريق Azure SDK، ولكنه يتوافق مع عملاء التشفير بلغات أخرى مدعومة.
اللغة | المرجع |
---|---|
انتقال | المرجع |
واجهات برمجة التطبيقات و SDKs للشهادات
Azure CLI | PowerShell | واجهة برمجة تطبيقات REST | Resource Manager | .NET | Python | Java | JavaScript |
---|---|---|---|---|---|---|---|
المرجع التشغيل السريع |
المرجع التشغيل السريع |
المرجع | غير متوفر | المرجع التشغيل السريع |
المرجع التشغيل السريع |
المرجع التشغيل السريع |
المرجع التشغيل السريع |
واجهات برمجة التطبيقات وSDKs للأسرار
Azure CLI | PowerShell | واجهة برمجة تطبيقات REST | Resource Manager | .NET | Python | Java | JavaScript |
---|---|---|---|---|---|---|---|
المرجع التشغيل السريع |
المرجع التشغيل السريع |
المرجع | المرجع التشغيل السريع |
المرجع التشغيل السريع |
المرجع التشغيل السريع |
المرجع التشغيل السريع |
المرجع التشغيل السريع |
استخدام الأسرار
استخدم Azure Key Vault لتخزين أسرار التطبيق فقط. تشمل أمثلة الأسرار التي يجب تخزينها في Key Vault:
- أسرار تطبيق العميل
- سلسلة الاتصال
- كلمات المرور
- مفاتيح الوصول المشتركة
- مفاتيح SSH
يمكن تخزين أي معلومات متعلقة بالسر، مثل أسماء المستخدمين ومعرفات التطبيقات، على هيئة علامة في سر. بالنسبة لأي إعدادات تكوين حساسة أخرى، يجب استخدام تكوين تطبيق Azure.
المراجع
لحزم التثبيت ورمز المصدر، راجع مكتبات العملاء.
للحصول على معلومات حول أمان لوحة البيانات ل Key Vault، راجع ميزات أمان Azure Key Vault.
استخدام Key Vault في التطبيقات
للاستفادة من أحدث الميزات في Key Vault، نوصي باستخدام Key Vault SDK المتوفر لاستخدام الأسرار والشهادات والمفاتيح في التطبيق الخاص بك. يتم تحديث كل من Key Vault SDKs و REST API عند إطلاق ميزات جديدة للمنتج، وتتبع أفضل الممارسات والمبادئ التوجيهية.
بالنسبة للسيناريوهات الأساسية، هناك مكتبات أخرى وحلول تكامل للاستخدام المبسط، مع دعم مقدم من شركاء Microsoft أو مجتمعات المصادر المفتوحة.
بالنسبة للشهادات، يمكنك استخدام:
- ملحق Key Vault Virtual Machine (VM) الذي يوفر التحديث التلقائي للشهادات المخزنة في مخزن key vault. لمزيد من المعلومات، راجع:
- تكامل خدمة Azure App، الذي يمكنه إستيراد الشهادات من Key Vault وتحديثها تلقائيًا. لمزيد من المعلومات، راجع استيراد شهادة من Key Vault.
للأسرار، يمكنك استخدام:
- Key Vault الرئيسية مع إعدادات تطبيق App Service. لمزيد من المعلومات، راجع استخدام مراجع App Service لخدمة التطبيقات وApp Service.
- مراجع Key Vault باستخدام Azure App Configuration لتبسيط وصول تطبيقك إلى التكوين والأسرار. لمزيد من المعلومات، راجع استخدام مراجع Key Vault في تكوين تطبيق Azure.
أمثلة على التعليمات البرمجية
للحصول على أمثلة كاملة لاستخدام Azure Key Vault مع التطبيقات، راجع نماذج رمز Azure Key Vault.
إرشادات خاصة بالمهام
توفر المقالات والسيناريوهات التالية إرشادات خاصة بالمهمة للعمل مع Azure Key Vault:
- للوصول إلى key vault، يجب أن يتمكن تطبيق العميل من الوصول إلى نقاط نهاية متعددة للعديد من الوظائف. راجع الوصول إلى Key Vault خلف جدار حماية.
- يحتاج تطبيق مجموعة النظراء قيد التشغيل في Azure VM إلى شهادة. كيف تحصل على هذه الشهادة في هذا الجهاز الظاهري VM؟ راجع ملحق Key Vault Virtual Machine ل Windows أو ملحق Key Vault Virtual Machine ل Linux.
- لتعيين نهج وصول باستخدام Azure CLI أو PowerShell أو مدخل Azure، راجع تعيين نهج وصول Key Vault.
- للحصول على إرشادات الاستخدام ودورة حياة مخزن مفاتيح وكائنات تخزين مفاتيح متنوعة مع تمكين الحذف المبدئي، راجع إدارة إسترداد Azure Key Vault مع حماية الحذف والإزالة اليسيرة.
- عندما تحتاج إلى تمرير قيمة آمنة (مثل كلمة المرور) كمعلمة أثناء النشر، يمكنك تخزين هذه القيمة ككلمة سر في مخزن مفاتيح، كما يمكنك الإشارة إلى القيمة في قوالب "Resource Manager" الأخرى. لمزيد من المعلومات، راجع استخدام Azure Key Vault لتمرير قيمة المعلمة الآمنة أثناء النشر.
التكامل مع Key Vault
تستخدم الخدمات والسيناريوهات التالية أو تدمج مع Key Vault:
- يسمح التشفير في حالة الراحة بترميز (تشفير) البيانات عند استمرارها. غالبا ما تكون مفاتيح تشفير البيانات مشفرة باستخدام مفتاح تشفير في Azure Key Vault للحد من الوصول بشكل أكبر.
- يسمح لك Azure Information Protection بإدارة مفتاح المستأجر الخاص بك. على سبيل المثال، بدلاً من إدارة Microsoft لمفتاح المستأجر (الافتراضي)، يمكنك إدارة مفتاح المستأجر الخاص بك للامتثال للوائح معينة والتي تنطبق على مؤسستك. كما تسمى إدارة مفتاح المستأجر الخاص بك إحضار المفتاح الخاص بك (BYOK).
- يمكنك Azure Private Link من الوصول إلى خدمات Azure (على سبيل المثال، Azure Key Vault و Azure Storage و Azure Cosmos DB) وخدمات العملاء/الشركاء التي تستضيفها Azure عبر نقطة نهاية خاصة في الشبكة الظاهرية.
- يسمح تكامل Key Vault مع Azure Event Grid بإعلام المستخدمين عند تغير حالة سر مخزن في Key Vault. يمكنك توزيع إصدارات جديدة من الأسرار على التطبيقات أو تدوير الأسرار القريبة من انتهاء الصلاحية لمنع انقطاع الاتصال.
- حماية أسرار Azure DevOps الخاصة بك من الوصول غير المرغوب فيه في Key Vault.
- استخدم الأسرار المخزنة في Key Vault إلى للاتصال بـ Azure Storage من Azure DatabaseKs.
- تكوين موفر Azure Key Vault وتشغيله لـ Secrets Store CSI على Kubernetes.
مراجعات ومفاهيم Key Vault
للتعرف على:
- ميزة تسمح باسترداد الكائنات المحذوفة، سواء كان الحذف عرضًيا أو متعمدًا، راجع نظرة عامة على الحذف السلس لمفتاح Azure Key.
- المفاهيم الأساسية للتقييد وللحصول على نهج للتطبيق الخاص بك، راجع إرشادات تقييد Azure Key Vault.
- العلاقات بين المناطق ومناطق الأمان، راجع عوالم أمان Azure Key Vault والحدود الجغرافية.