إدارة HSM المُدار باستخدام Azure CLI
إشعار
يدعم Key Vault نوعين من الموارد: الخزائن وHSMs المُدارة. تتناول هذه المقالة موضوع Managed HSM. إذا كنت تريد معرفة كيفية إدارة مخزن، فالرجاء الاطلاع على Manage Key Vault using the Azure CLI.
للحصول على نظرة عامة حول HSM المُدار، راجع ما هو HSM المُدار؟
في حال لم يكن لديك اشتراك Azure، فأنشئ حساباً مجانيّاً قبل البدء.
المتطلبات الأساسية
لإكمال الخطوات الواردة في هذه المقالة، يجب أن تتوفر لديك العناصر التالية:
- اشتراك في منصة Microsoft Azure. إذا لم يكن لديك واحداً، يُمكنك الاشتراك في الإصدار التجريبي المجاني.
- الإصدار 2.25.0 من Azure CLI أو أحدث. قم بتشغيل
az --version
للعثور على الإصدار. إذا كنت بحاجة إلى التثبيت أو الترقية، فراجع تثبيت Azure CLI. - إدارة HSM في اشتراكك. راجع Quickstart: Provision and activate a managed HSM using Azure CLI لتوفير HSM المُدار وتنشيطه.
Azure Cloud Shell
Azure يستضيف Azure Cloud Shell، بيئة تفاعلية يمكن استخدامها من خلال المستعرض. يمكنك استخدام Bash أو PowerShell مع Cloud Shell للعمل مع خدمات Azure. يمكنك استخدام أوامر Cloud Shell المثبتة مسبقًا لتشغيل التعليمات البرمجية في هذه المقالة دون الحاجة إلى تثبيت أي شيء على البيئة المحلية.
لبدء Azure Cloud Shell:
خيار | مثال/ رابط |
---|---|
انقر فوق جربه في الزاوية العلوية اليسرى من التعليمة البرمجية أو كتلة الأمر. تحديد جربه لا يقوم بنسخ التعليمة البرمجية أو الأمر تلقائيًا إلى Cloud Shell. | |
انتقل إلى https://shell.azure.com، أو حدد زر تشغيل Cloud Shell لفتح Cloud Shell في المتصفح لديك. | |
حدد زر Cloud Shell على شريط القوائم في أعلى اليمين في مدخل Microsoft Azure. |
لاستخدام Azure Cloud Shell:
ابدأ تشغيل Cloud Shell.
حدد الزر نسخ على كتلة التعليمات البرمجية (أو كتلة الأوامر) لنسخ التعليمات البرمجية أو الأمر.
ألصق التعليمة البرمجية أو الأمر في جلسة Cloud Shell بتحديد Ctrl+Shift+Vعلى Windows وLunix، أو بتحديد Cmd+Shift+Vعلى macOS.
حدد Enter لتشغيل التعليمات البرمجية أو الأمر.
تسجيل الدخول إلى Azure
لتسجيل الدخول إلى Azure باستخدام CLI يمكنك كتابة ما يلي:
az login
لمزيد من المعلومات حول خيارات تسجيل الدخول عبر واجهة سي إل آي، راجع تسجيل الدخول باستخدام "Azure CLI"
إشعار
تظهر جميع الأوامر أدناه طريقتين للاستخدام. واحد يستخدم معلمات --hsm-name و --name (لاسم المفتاح) والآخر باستخدام --id parameter حيث يمكنك تحديد عنوان url بأكمله بما في ذلك اسم المفتاح عند الاقتضاء. تكون الطريقة الأخيرة مفيدة عندما لا يكون لدى المتصل (مستخدم أو تطبيق) وصول للقراءة على مستوى التحكم ويقتصر الوصول فقط على مستوى البيانات.
إشعار
تتطلب بعض التفاعلات مع المواد الرئيسية أذونات التحكم في الوصول استنادًا إلى الدور المحلي المحدد. للحصول على قائمة كاملة بأدوار وأذونات التحكم في الوصول استنادا إلى الدور المحلي المضمنة، راجع الأدوار المضمنة في التحكم في الوصول استنادا إلى الدور المحلي ل HSM المدارة. لتعيين هذه الأذونات لمستخدم، راجع الوصول الآمن إلى HSMs المُدارة
إنشاء مفتاح HSM
إشعار
لا يمكن تصدير المفتاح الذي تم إنشاؤه أو استيراده إلى HSM المُدار. الرجوع إلى أفضل الممارسات الموصى بها لقابلية المفتاح والمتانة.
استخدم الأمر az keyvault key create
لإنشاء مفتاح.
إنشاء مفتاح RSA
يوضح المثال أدناه كيفية إنشاء مفتاح RSA 3072 بت والذي سيتم استخدامه فقط لعمليات wrapKey و unsrapKey (--ops).
az keyvault key create --hsm-name ContosoMHSM --name myrsakey --ops wrapKey unwrapKey --kty RSA-HSM --size 3072
## OR
# Note the key name (myrsakey) in the URI
az keyvault key create --id https://ContosoMHSM.managedhsm.azure.net/keys/myrsakey --ops wrapKey unwrapKey --kty RSA-HSM --size 3072
لاحظ أن العملية get
تعرض فقط المفتاح العام وسمات المفتاح. لا يقوم بإرجاع المفتاح الخاص (في حالة وجود مفتاح غير متماثل، أو مادة المفتاح (في حالة وجود مفتاح متماثل).
إنشاء مفتاح EC
يوضح المثال أدناه كيفية إنشاء مفتاح EC بمنحنى P-256 الذي سيتم استخدامه فقط لعمليات التوقيع والتحقق (--op) وله علامتان، استخدام و اسم التطبيق . تساعدك العلامات على إضافة بيانات وصفية إضافية إلى المفتاح للتتبع والإدارة.
az keyvault key create --hsm-name ContosoMHSM --name myec256key --ops sign verify --tags ‘usage=signing] appname=myapp’ --kty EC-HSM --curve P-256
## OR
# Note the key name (myec256key) in the URI
az keyvault key create --id https://ContosoMHSM.managedhsm.azure.net/keys/myec256key --ops sign verify --tags ‘usage=signing] appname=myapp’ --kty EC-HSM --curve P-256
إنشاء مفتاح متماثل 256 بت
يوضح المثال أدناه كيفية إنشاء مفتاح 256 بت متماثل والذي سيتم استخدامه فقط لعمليات التشفير وفك التشفير (- ops).
az keyvault key create --hsm-name ContosoMHSM --name myaeskey --ops encrypt decrypt --tags --kty oct-HSM --size 256
## OR
# Note the key name (myaeskey) in the URI
az keyvault key create --id https://ContosoMHSM.managedhsm.azure.net/keys/myaeskey --ops encrypt decrypt --tags ‘usage=signing] appname=myapp’ --kty oct-HSM --size 256
عرض السمات والعلامات الرئيسية
استخدم الأمر az keyvault key show
لعرض سمات وإصدارات وعلامات مفتاح.
az keyvault key show --hsm-name ContosoHSM --name myrsakey
## OR
# Note the key name (myaeskey) in the URI
az keyvault key show --id https://ContosoMHSM.managedhsm.azure.net/keys/myrsakey
سرد المفاتيح
استخدم الأمر az keyvault key list
لسرد جميع المفاتيح داخل HSM المُدار.
az keyvault key list --hsm-name ContosoHSM
## OR
# use full URI
az keyvault key list --id https://ContosoMHSM.managedhsm.azure.net/
حذف مفتاح
استخدم الأمر az keyvault key delete
لحذف مفتاح من HSM المُدار. لاحظ أن الحذف المبدئي يكون دائماً قيد التشغيل. لذلك سيظل المفتاح المحذوف في حالة المحذوفة ويمكن استعادته حتى يمر عدد أيام الاحتفاظ عندما يتم مسح المفتاح (حذفه نهائياً) مع عدم إمكانية استرداده.
az keyvault key delete --hsm-name ContosoHSM --name myrsakey
## OR
# Note the key name (myaeskey) in the URI
az keyvault key delete --id https://ContosoMHSM.managedhsm.azure.net/keys/myrsakey
إدراج المفاتيح المحذوفة
استخدم الأمر az keyvault key list-deleted
لإدراج جميع المفاتيح في الحالة المحذوفة في HSM المُدار.
az keyvault key list-deleted --hsm-name ContosoHSM
## OR
# use full URI
az keyvault key list-deleted --id https://ContosoMHSM.managedhsm.azure.net/
استعادة (إلغاء حذف) مفتاح محذوف
استخدم الأمر az keyvault key list-deleted
لإدراج جميع المفاتيح في الحالة المحذوفة في HSM المُدار. إذا كنت بحاجة إلى استرداد (إلغاء حذف) مفتاح باستخدام المعلمة --id أثناء استرداد مفتاح محذوف، يجب عليك ملاحظة قيمة المفتاح المحذوف recoveryId
الذي تم الحصول عليه من الأمر az keyvault key list-deleted
.
az keyvault key recover --hsm-name ContosoHSM --name myrsakey
## OR
# Note the key name (myaeskey) in the URI
az keyvault key recover --id https://ContosoMHSM.managedhsm.azure.net/deletedKeys/myrsakey
إزالة (حذف نهائي) مفتاح
استخدم الأمر az keyvault key purge
لمسح (حذف نهائي) أحد المفاتيح.
إشعار
إذا تم تمكين الحماية من الإزالة في HSM المُدار، فلن يُسمح بعملية الإزالة. سيتم مسح المفتاح تلقائياً عند مرور فترة الاستبقاء.
az keyvault key purge --hsm-name ContosoHSM --name myrsakey
## OR
# Note the key name (myaeskey) in the URI
az keyvault key purge --id https://ContosoMHSM.managedhsm.azure.net/deletedKeys/myrsakey
إنشاء نسخة احتياطية بمفتاح واحد
استخدم az keyvault key backup
لإنشاء نسخة احتياطية للمفتاح. ملف النسخ الاحتياطي عبارة عن blob مشفر مرتبط بشكل مشفر بمجال الأمان الخاص بمصدر HSM. يمكن استعادته فقط في HSMs التي تشترك في نفس مجال الأمان. اقرأ المزيد حول مجال الأمان .
az keyvault key backup --hsm-name ContosoHSM --name myrsakey --file myrsakey.backup
## OR
# Note the key name (myaeskey) in the URI
az keyvault key backup --id https://ContosoMHSM.managedhsm.azure.net/deletedKeys/myrsakey --file myrsakey.backup
استعادة مفتاح واحد من النسخة الاحتياطية
استخدم az keyvault key restore
لاستعادة مفتاح واحد. يجب أن يشترك مصدر HSM حيث تم إنشاء النسخة الاحتياطية في نفس مجال الأمان مثل HSM الهدف حيث يتم استعادة المفتاح.
إشعار
لن تنجح الاستعادة في حالة وجود مفتاح يحمل نفس الاسم في حالة نشطة أو محذوفة.
az keyvault key restore --hsm-name ContosoHSM --name myrsakey --file myrsakey.backup
## OR
# Note the key name (myaeskey) in the URI
az keyvault key restore --id https://ContosoMHSM.managedhsm.azure.net/deletedKeys/myrsakey --file myrsakey.backup
استيراد مفتاح من ملف
استخدم الأمر az keyvault key import
لاستيراد مفتاح (فقط RSA وEC) من ملف. يجب أن يحتوي ملف الشهادة على مفتاح خاص ويجب أن يستخدم تشفير PEM (كما هو محدد في RFCs 1421 ، 1422 ، 1423 ، 1424 ).
az keyvault key import --hsm-name ContosoHSM --name myrsakey --pem-file mycert.key --pem-password 'mypassword'
## OR
# Note the key name (myaeskey) in the URI
az keyvault key recover --id https://ContosoMHSM.managedhsm.azure.net/deletedKeys/myrsakey --pem-file mycert.key --password 'mypassword'
لاستيراد مفتاح من HSM محلي إلى HSM المُدار، راجع استيراد المفاتيح المحمية بواسطة HSM إلى HSM المُدار (BYOK)
الخطوات التالية
- للحصول على مرجع Azure CLI الكامل لأوامر key vault، راجع مرجع Key Vault CLI.
- للحصول على مراجع البرمجة، راجع دليل مطور Azure Key Vault
- تعرف على المزيد حول إدارة أدوار HSM المُدارة
- تعرف على المزيد حول أفضل ممارسات HSM المُدارة