إدارة HSM المُدار باستخدام Azure CLI

إشعار

يدعم Key Vault نوعين من الموارد: الخزائن وHSMs المُدارة. تتناول هذه المقالة موضوع Managed HSM. إذا كنت تريد معرفة كيفية إدارة مخزن، فالرجاء الاطلاع على Manage Key Vault using the Azure CLI.

للحصول على نظرة عامة حول HSM المُدار، راجع ما هو HSM المُدار؟

في حال لم يكن لديك اشتراك Azure، فأنشئ حساباً مجانيّاً قبل البدء.

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

لإكمال الخطوات الواردة في هذه المقالة، يجب أن تتوفر لديك العناصر التالية:

Azure Cloud Shell

Azure يستضيف Azure Cloud Shell، بيئة تفاعلية يمكن استخدامها من خلال المستعرض. يمكنك استخدام Bash أو PowerShell مع Cloud Shell للعمل مع خدمات Azure. يمكنك استخدام أوامر Cloud Shell المثبتة مسبقًا لتشغيل التعليمات البرمجية في هذه المقالة دون الحاجة إلى تثبيت أي شيء على البيئة المحلية.

لبدء Azure Cloud Shell:

خيار مثال/ رابط
انقر فوق ⁧⁩جربه⁧⁩ في الزاوية العلوية اليسرى من التعليمة البرمجية أو كتلة الأمر. تحديد ⁧⁩جربه⁧⁩ لا يقوم بنسخ التعليمة البرمجية أو الأمر تلقائيًا إلى Cloud Shell. Screenshot that shows an example of Try It for Azure Cloud Shell.
انتقل إلى ⁧⁩⁧ https://shell.azure.com⁩⁧⁩، أو حدد زر ⁩تشغيل Cloud Shell لفتح Cloud Shell في المتصفح لديك. Button to launch Azure Cloud Shell.
حدد زر Cloud Shell على شريط القوائم في أعلى اليمين في مدخل Microsoft Azure. Screenshot that shows the Cloud Shell button in the Azure portal

لاستخدام Azure Cloud Shell:

  1. ابدأ تشغيل Cloud Shell.

  2. حدد الزر نسخ على كتلة التعليمات البرمجية (أو كتلة الأوامر) لنسخ التعليمات البرمجية أو الأمر.

  3. ألصق التعليمة البرمجية أو الأمر في جلسة Cloud Shell بتحديد Ctrl+Shift+Vعلى Windows وLunix، أو بتحديد Cmd+Shift+Vعلى macOS.

  4. حدد 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 --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)

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