تكوين المفاتيح المدارة من قبل العميل في نفس المستأجر لحساب تخزين موجود
مقالة
يقوم Azure Storage بتشفير كافة البيانات الثابتة في حساب تخزين. بشكل افتراضي، يتم تشفير البيانات باستخدام المفاتيح المُدارة من قِبل Microsoft. لمزيد من التحكم في مفاتيح التشفير، يمكنك إدارة المفاتيح الخاصة بك. يجب تخزين المفاتيح المدارة من بواسطة العميل في Azure Key Vault أو Key Vault نموذج أمان الأجهزة المدارة (HSM).
توضح هذه المقالة كيفية تكوين التشفير باستخدام مفاتيح يديرها العميل لحساب تخزين موجود عندما يكون حساب التخزين وخزنة المفاتيح في نفس المستأجر. يتم تخزين مفاتيح مدارة بواسطة العميل في key vault.
يدعم Azure Key Vault وAzure Key Vault Managed HSM واجهات برمجة التطبيقات وواجهات الإدارة نفسها لتكوين المفاتيح التي يديرها العميل. أي إجراء مدعوم ل Azure Key Vault مدعوم أيضا ل Azure Key Vault Managed HSM.
تكوين key vault
يمكنك استخدام مخزن مفاتيح جديد أو موجود لتخزين المفاتيح المدارة من قبل العملاء. قد يكون حساب التخزين ومخزن المفاتيح في مناطق مختلفة أو اشتراكات في المستأجر نفسه. لمعرفة المزيد حول Azure Key Vault، راجع نظرة عامة على Azure Key Vault وما المقصود بـ Azure Key Vault؟.
يتطلب استخدام المفاتيح المدارة من قبل العملاء مع تشفير Azure Storage تمكين حماية الإزالة والحذف المبدئي لمخزن المفاتيح. يتم تمكين الحذف المبدئي بشكل افتراضي عند إنشاء مخزن مفاتيح جديد ولا يمكن تعطيله. يمكنك تمكين حماية الإزالة إما عند إنشاء مخزن المفاتيح أو بعد إنشائه.
لتمكين الحماية من الإزالة على مخزن مفاتيح موجود، اتبع الخطوات التالية:
انتقل إلى Key Vault في مدخل Azure.
ضمن الإعدادات، اختر خصائص.
في القسم الحماية من الإزالة، اختر تمكين الحماية من الإزالة.
لإنشاء مخزن مفاتيح جديد باستخدام PowerShell، قم بتثبيت الإصدار 2.0.0 أو إصدار أحدث من الوحدة Az.KeyVault PowerShell. بعدها قم باستدعاء New-AzKeyVault لإنشاء مخزن مفاتيح جديد. مع الإصدار 2.0.0 والإصدارات الأحدث من الوحدة Az.KeyVault، يتم تمكين الحذف المبدئي بشكل افتراضي عند إنشاء مخزن مفاتيح جديد.
ينشئ المثال التالي خزنة مفاتيح جديدة مع تمكين الحماية من الحذف والإزالة الناعمة. تم تعيين نموذج إذن key vault لاستخدام Azure RBAC. تذكَّر استبدال قيم العناصر النائبة في الأقواس بقيمك.
بعد إنشاء key vault، ستحتاج إلى تعيين دور Key Vault Crypto Officer لنفسك. يمكنك هذا الدور من إنشاء مفتاح في مخزن المفاتيح. يعين المثال التالي هذا الدور لمستخدم، محدد النطاق إلى مخزن المفاتيح:
لإنشاء مخزن مفاتيح جديد باستخدام Azure CLI، قم باستدعاء az keyvault create. ينشئ المثال التالي خزنة مفاتيح جديدة مع تمكين الحماية من الحذف والإزالة الناعمة. تم تعيين نموذج إذن key vault لاستخدام Azure RBAC. تذكَّر استبدال قيم العناصر النائبة في الأقواس بقيمك.
بعد إنشاء key vault، ستحتاج إلى تعيين دور Key Vault Crypto Officer لنفسك. يمكنك هذا الدور من إنشاء مفتاح في مخزن المفاتيح. يعين المثال التالي هذا الدور لمستخدم، محدد النطاق إلى مخزن المفاتيح:
kvResourceId=$(az keyvault show --resource-group $rgName \
--name $kvName \
--query id \
--output tsv)
az role assignment create --assignee "<user-email>" \
--role "Key Vault Crypto Officer" \
--scope $kvResourceId
لإضافة مفتاح باستخدام PowerShell، قم باستدعاء Add-AzKeyVaultKey. تذكر استبدال قيم العناصر النائبة بين قوسين بقيمك الخاصة واستخدام المتغيرات المحددة في الأمثلة السابقة.
عند تمكين المفاتيح المدارة من قبل العميل لحساب تخزين موجود، يجب تحديد هوية مدارة لاستخدامها لتخويل الوصول إلى مخزن المفاتيح الذي يحتوي على المفتاح. يجب أن يكون للهوية المدارة أذونات للوصول إلى المفتاح في مخزن المفاتيح.
يمكن أن تكون الهوية المدارة التي تخول الوصول إلى مخزن المفاتيح إما هوية مدارة معينة من قبل المستخدم أو معينة من قبل النظام. للتعرف على أنواع الهويات المُدارة التي يعيّنها النظام مقابل التي يعينها المستخدم، راجع أنواع الهويات المُدارة.
استخدام هوية مدارة معينة من قبل المستخدم لتخويل الوصول
عند تمكين المفاتيح المُدارة من قِبل العميل لحساب تخزين جديد، يتعين عليك تحديد هوية مُدارة معيّنة من قبل المستخدم. يدعم حساب التخزين الحالي استخدام هوية مدارة معينة من قبل المستخدم أو هوية مدارة معينة من قبل النظام لتكوين المفاتيح التي يديرها العميل.
عند تكوين المفاتيح المدارة من قبل العميل بهوية مدارة معينة من قبل المستخدم، يتم استخدام الهوية المدارة المعينة من قبل المستخدم لتخويل الوصول إلى مخزن المفاتيح الذي يحتوي على المفتاح. يجب إنشاء الهوية المعينة من قبل المستخدم قبل تكوين المفاتيح التي يديرها العميل.
يتعين أن يكون للهوية المُدارة المعيّنة من قِبل المستخدم الأذونات للوصول إلى المفتاح في key vault. قم بتعيين دور مستخدم تشفير خدمة تشفير Key Vault للهوية المدارة المعينة من قبل المستخدم مع نطاق مخزن المفاتيح لمنح هذه الأذونات.
قبل أن تتمكن من تكوين المفاتيح المدارة من قبل العميل باستخدام هوية مدارة معينة من قبل المستخدم، يجب عليك تعيين دور مستخدم تشفير خدمة تشفير Key Vault للهوية المدارة المعينة من قبل المستخدم، والمخصصة لمخزن المفاتيح. يمنح هذا الدور أذونات الهوية المدارة المعينة من قبل المستخدم للوصول إلى المفتاح في مخزن المفاتيح. لمزيد من المعلومات حول تعيين أدوار Azure RBAC باستخدام مدخل Microsoft Azure، راجع تعيين أدوار Azure باستخدام مدخل Microsoft Azure.
عندما تقوم بتكوين المفاتيح المدارة من قبل العميل باستخدام مدخل Azure، يمكنك تحديد هوية موجودة معينة من قبل المستخدم من خلال واجهة مستخدم المدخل.
يوضح المثال التالي كيفية استرداد الهوية المدارة المعينة من قبل المستخدم وتعيين دور التحكم في الوصول استنادا إلى الدور المطلوب إليها، المحدد في مخزن المفاتيح. تذكر استبدال قيم العنصر النائب بين قوسين بقيمك الخاصة واستخدام المتغيرات المحددة في الأمثلة السابقة:
يوضح المثال التالي كيفية استرداد الهوية المدارة المعينة من قبل المستخدم وتعيين دور التحكم في الوصول استنادا إلى الدور المطلوب إليها، المحدد في مخزن المفاتيح. تذكر استبدال قيم العنصر النائب بين قوسين بقيمك الخاصة واستخدام المتغيرات المحددة في الأمثلة السابقة:
identityResourceId=$(az identity show --name <user-assigned-identity> \
--resource-group $rgName \
--query id \
--output tsv)
principalId=$(az identity show --name <user-assigned-identity> \
--resource-group $rgName \
--query principalId \
--output tsv)
az role assignment create --assignee-object-id $principalId \
--role "Key Vault Crypto Service Encryption User" \
--scope $kvResourceId \
--assignee-principal-type ServicePrincipal
استخدام هوية مدارة معينة من قبل النظام لتخويل الوصول
ترتبط الهوية المدارة المعينة من قبل النظام بمثيل خدمة Azure، وفي هذه الحالة يكون حساب Azure Storage. يجب تعيين هوية مدارة تم تعيينها من قبل النظام بشكل صريح إلى حساب تخزين قبل أن تتمكن من استخدام الهوية المدارة المعينة من قبل النظام لتخويل الوصول إلى مخزن المفاتيح الذي يحتوي على المفتاح المدار من قبل العميل.
يمكن لحسابات التخزين الحالية فقط استخدام هوية معينة من قبل النظام لتفويض الوصول إلى مخزن المفاتيح. يجب أن تستخدم حسابات التخزين الجديدة هوية معينة من قبل المستخدم، إذا تم تكوين المفاتيح التي يديرها العميل عند إنشاء الحساب.
يجب أن يكون للهوية المدارة المعينة من قبل النظام أذونات للوصول إلى المفتاح في مخزن المفاتيح. قم بتعيين دور مستخدم تشفير خدمة تشفير Key Vault إلى الهوية المدارة المعينة من قبل النظام مع نطاق مخزن المفاتيح لمنح هذه الأذونات.
قبل أن تتمكن من تكوين المفاتيح المدارة من قبل العميل باستخدام هوية مدارة معينة من قبل النظام، يجب عليك تعيين دور مستخدم تشفير خدمة تشفير Key Vault للهوية المدارة المعينة من قبل النظام، والمخصصة لمخزن المفاتيح. يمنح هذا الدور أذونات الهوية المدارة المعينة من قبل النظام للوصول إلى المفتاح في مخزن المفاتيح. لمزيد من المعلومات حول تعيين أدوار Azure RBAC باستخدام مدخل Microsoft Azure، راجع تعيين أدوار Azure باستخدام مدخل Microsoft Azure.
عندما تقوم بتكوين المفاتيح المدارة من قبل العميل باستخدام مدخل Azure باستخدام هوية مدارة معينة من قبل النظام، يتم تعيين الهوية المدارة المعينة من قبل النظام إلى حساب التخزين تحت التغطيات.
بعد ذلك، قم بتعيين دور التحكم في الوصول استنادا إلى الدور المطلوب إلى الهوية المدارة المعينة من قبل النظام، والمخصص لمخزن المفاتيح. تذكر استبدال قيم العنصر النائب بين قوسين بقيمك الخاصة واستخدام المتغيرات المحددة في الأمثلة السابقة:
لمصادقة الوصول إلى مخزن المفاتيح باستخدام هوية مدارة معينة من قبل النظام، قم أولا بتعيين الهوية المدارة المعينة من قبل النظام إلى حساب التخزين عن طريق استدعاء تحديث حساب التخزين az:
بعد ذلك، قم بتعيين دور التحكم في الوصول استنادا إلى الدور المطلوب إلى الهوية المدارة المعينة من قبل النظام، والمخصص لمخزن المفاتيح. تذكر استبدال قيم العنصر النائب بين قوسين بقيمك الخاصة واستخدام المتغيرات المحددة في الأمثلة السابقة:
principalId=$(az storage account show --name $accountName \
--resource-group $rgName \
--query identity.principalId \
--output tsv)
az role assignment create --assignee-object-id $principalId \
--role "Key Vault Crypto Service Encryption User" \
--scope $kvResourceId
تكوين المفاتيح المدارة من قبل العميل لحساب موجود
عند تكوين التشفير باستخدام المفاتيح التي يديرها العميل لحساب تخزين موجود، يمكنك اختيار تحديث إصدار المفتاح المستخدم لتشفير Azure Storage تلقائياً، كلما توفر إصدار جديد في مخزن المفاتيح المقترن. بدلاً من ذلك، يمكنك تحديد إصدار مفتاح بشكل صريح لاستخدامه للتشفير حتى يتم تحديث إصدار المفتاح يدوياً.
عند تغيير إصدار المفتاح، سواء تلقائيا أو يدويا، تتغير حماية مفتاح التشفير الجذر، ولكن تظل البيانات الموجودة في حساب Azure Storage مشفرة في جميع الأوقات. لا يوجد أي إجراء آخر مطلوب من جانبك للتأكد من حماية بياناتك. لا يؤثر تدوير إصدار المفتاح على الأداء. لا يوجد وقت تعطل مقترن بتدوير إصدار المفتاح.
يمكنك استخدام هوية مدارة معينة من قبل النظام أو معينة من قبل المستخدم لتخويل الوصول إلى مخزن المفاتيح عند تكوين المفاتيح التي يديرها العميل لحساب تخزين موجود.
إشعار
لتدوير مفتاح، قم بإنشاء إصدار جديد من المفتاح في Azure Key Vault. لا يتعامل Azure Storage مع تدوير المفتاح، لذلك ستحتاج إلى إدارة تدوير المفتاح في مخزن المفاتيح. يمكنك تكوين التدوير التلقائي للمفتاح في Azure Key Vault أو تدوير المفتاح يدويًا.
تكوين التشفير للتحديث التلقائي لإصدارات المفاتيح
يمكن لـ Azure Storage تحديث المفتاح المدار من قبل العميل، والذي يتم استخدامه للتشفير تلقائياً لاستخدام أحدث إصدار من المفاتيح من مخزن المفاتيح. يتحقق Azure Storage من مخزن المفاتيح يوميًا للحصول على إصدار جديد من المفتاح. عند توفر إصدار جديد، يبدأ Azure Storage تلقائيًا باستخدام أحدث إصدار من المفتاح للتشفير.
هام
يتحقق Azure Storage من مخزن المفاتيح للحصول على إصدار مفتاح جديد مرة واحدة فقط يوميًا. عند تدوير مفتاح، تأكد من الانتظار لمدة 24 ساعة قبل تعطيل الإصدار الأقدم.
لتكوين المفاتيح المدارة من قبل العميل لحساب موجود مع التحديث التلقائي لإصدار المفتاح في مدخل Microsoft Azure، اتبع الخطوات التالية:
انتقل إلى حساب التخزين الخاص بك.
ضمن Security + networking، حدد Encryption. بشكل افتراضي، يتم تعيين إدارة المفاتيح إلى المفاتيح المدارة من Microsoft كما هو موضح في الصورة أدناه:
حدد خيار المفاتيح المدارة من قبل العميل. إذا تم تكوين الحساب مسبقا للمفاتيح المدارة بواسطة العميل مع التحديث اليدوي لإصدار المفتاح، فحدد تغيير المفتاح بالقرب من أسفل الصفحة.
اختر الخيار تحديد من Key Vault.
ثم حدد تحديد مخزن مفاتيح ومفتاح.
حدد مخزن المفاتيح الذي يحتوي على المفتاح الذي تريد استخدامه. يمكنك أيضاً إنشاء مخزن مفاتيح جديد.
حدد المفتاح من مخزن المفاتيح. يمكنك أيضاً إنشاء مفتاح جديد.
حدد نوع الهوية التي تريد استخدامها لمصادقة الوصول إلى مخزن المفاتيح. تتضمن الخيارات تعيين من قِبل النظام (الافتراضي) أو تعيين من قبل المستخدم. لمعرفة المزيد حول كل نوع من أنواع الهوية المدارة، راجع أنواع الهوية المدارة.
إذا حددت التعيين بواسطة النظام، يتم إنشاء الهوية المدارة التي يعينها النظام لحساب التخزين سرًا، إذا لم تكن موجودةً بالفعل.
إذا قمت بتحديد التعيين من قبل المستخدم، يجب عليك تحديد هوية حالية معينة من قبل المستخدم لديها أذونات للوصول إلى مخزن المفاتيح. للتعرف على كيفية إنشاء هوية معينة من قِبل المستخدم، راجع إدارة الهويات المُدارة المعينة من قِبل المستخدم.
احفظ تغييراتك.
بعد تحديد المفتاح، يشير مدخل Microsoft Azure إلى تمكين التحديث التلقائي لإصدار المفتاح ويعرض إصدار المفتاح المستخدم حاليا للتشفير. يعرض المدخل أيضاً نوع الهوية المدارة المستخدمة لتخويل الوصول إلى مخزن المفاتيح والمعرف الأساسي للهوية المدارة.
لتكوين المفاتيح المدارة من قبل العميل لحساب موجود مع التحديث التلقائي لإصدار المفتاح باستخدام PowerShell، قم بتثبيت الوحدة Az.Storage، الإصدار 2.0.0 أو إصدار أحدث.
بعد ذلك، اتصل ب Set-AzStorageAccount لتحديث إعدادات تشفير حساب التخزين. قم بتضمين المعلمة KeyvaultEncryption لتمكين المفاتيح المدارة من قبل العميل لحساب التخزين، وتعيينها KeyVersion إلى سلسلة فارغة لتمكين التحديث التلقائي لإصدار المفتاح. إذا تم تكوين حساب التخزين مسبقا للمفاتيح التي يديرها العميل بإصدار مفتاح معين، فإن تعيين إصدار المفتاح إلى سلسلة فارغة يتيح التحديث التلقائي لإصدار المفتاح من الآن فصاعدا.
$accountName = "<storage-account>"
# Use this form of the command with a user-assigned managed identity.
Set-AzStorageAccount -ResourceGroupName $rgName `
-AccountName $accountName `
-IdentityType SystemAssignedUserAssigned `
-UserAssignedIdentityId $userIdentity.Id `
-KeyvaultEncryption `
-KeyVaultUri $keyVault.VaultUri `
-KeyName $key.Name `
-KeyVersion "" `
-KeyVaultUserAssignedIdentityId $userIdentity.Id
# Use this form of the command with a system-assigned managed identity.
Set-AzStorageAccount -ResourceGroupName $rgName `
-AccountName $accountName `
-KeyvaultEncryption `
-KeyName $key.Name `
-KeyVersion "" `
-KeyVaultUri $keyVault.VaultUri
لتكوين المفاتيح المدارة من قبل العميل لحساب موجود مع التحديث التلقائي لإصدار المفتاح باستخدام Azure CLI، قم بتثبيت الإصدار 2.4.0 من Azure CLI أو إصدار أحدث. لمزيد من المعلومات، اطلع على تثبيت Azure CLI.
بعد ذلك، اتصل بتحديث حساب التخزين az لتحديث إعدادات تشفير حساب التخزين. قم بتضمين المعلمة --encryption-key-source وتعيينها إلى Microsoft.Keyvault لتمكين المفاتيح المدارة من قبل العميل للحساب، وتعيينها encryption-key-version إلى سلسلة فارغة لتمكين التحديث التلقائي لإصدار المفتاح. إذا تم تكوين حساب التخزين مسبقا للمفاتيح التي يديرها العميل بإصدار مفتاح معين، فإن تعيين إصدار المفتاح إلى سلسلة فارغة يتيح التحديث التلقائي لإصدار المفتاح من الآن فصاعدا.
accountName="<storage-account>"
keyVaultUri=$(az keyvault show \
--name $kvName \
--resource-group $rgName \
--query properties.vaultUri \
--output tsv)
# Use this form of the command with a user-assigned managed identity.
az storage account update \
--name $accountName \
--resource-group $rgName \
--identity-type SystemAssigned,UserAssigned \
--user-identity-id $identityResourceId \
--encryption-key-name $keyName \
--encryption-key-version "" \
--encryption-key-source Microsoft.Keyvault \
--encryption-key-vault $keyVaultUri \
--key-vault-user-identity-id $identityResourceId
# Use this form of the command with a system-assigned managed identity.
az storage account update \
--name $accountName \
--resource-group $rgName \
--encryption-key-name $keyName \
--encryption-key-version "" \
--encryption-key-source Microsoft.Keyvault \
--encryption-key-vault $keyVaultUri
تكوين التشفير للتحديث اليدوي لإصدارات المفاتيح
إذا كنت تفضل تحديث إصدار المفتاح يدوياً، فحدد الإصدار صراحة في الوقت الذي تقوم فيه بتكوين التشفير باستخدام المفاتيح التي يديرها العميل. في هذه الحالة، لن يحدث Azure Storage إصدار المفتاح تلقائياً عند إنشاء إصدار جديد في مخزن المفاتيح. لاستخدام إصدار مفتاح جديد، يجب تحديث الإصدار المستخدم لتشفير Azure Storage يدوياً.
لتكوين المفاتيح التي يديرها العميل باستخدام التحديث اليدوي لإصدار المفتاح في مدخل Azure، حدد عنوان URI للمفتاح، بما في ذلك الإصدار. لتحديد مفتاح كعنوان URI، اتبع الخطوات التالية:
لتحديد موقع URI للمفتاح في مدخل Azure، انتقل إلى مخزن المفاتيح لديك، وحدد إعداد المفاتيح. حدد المفتاح المطلوب، ثم حدد المفتاح المطلوب لعرض إصداراته. حدد إصدار مفتاح لعرض إعدادات ذلك الإصدار.
انسخ قيمة حقل معرف المفتاح الذي يوفر عنوان URI.
في إعدادات مفتاح التشفير لحساب التخزين، حدد الخيار إدخال عنوان URI للمفتاح.
الصق عنوان URI الذي نسخته في حقل URI للمفتاح. احذف إصدار المفتاح من URI لتمكين التحديث التلقائي لإصدار المفتاح.
حدد الاشتراك الذي يحتوي على مخزن المفاتيح.
حدد إما هوية مدارة معينة من قبل النظام أو معينة من قبل المستخدم.
احفظ تغييراتك.
لتكوين المفاتيح التي يديرها العميل مع التحديث اليدوي لإصدار المفتاح، قم بتوفير إصدار المفتاح بشكل صريح عند تكوين التشفير لحساب التخزين. قم باستدعاء Set-AzStorageAccount لتحديث إعدادات تشفير حساب التخزين، كما هو موضح في المثال التالي، وقم بتضمين الخيار -KeyvaultEncryption لتمكين المفاتيح التي يديرها العميل لحساب التخزين.
تذكر استبدال قيم العناصر النائبة بين قوسين بقيمك الخاصة واستخدام المتغيرات المحددة في الأمثلة السابقة.
$accountName = "<storage-account>"
# Use this form of the command with a user-assigned managed identity.
Set-AzStorageAccount -ResourceGroupName $rgName `
-AccountName $accountName `
-IdentityType SystemAssignedUserAssigned `
-UserAssignedIdentityId $userIdentity.Id `
-KeyvaultEncryption `
-KeyVaultUri $keyVault.VaultUri `
-KeyName $key.Name `
-KeyVersion $key.Version `
-KeyVaultUserAssignedIdentityId $userIdentity.Id
# Use this form of the command with a system-assigned managed identity.
Set-AzStorageAccount -ResourceGroupName $rgName `
-AccountName $accountName `
-KeyvaultEncryption `
-KeyVaultUri $keyVault.VaultUri `
-KeyName $key.Name `
-KeyVersion $key.Version
عند تحديث إصدار المفتاح يدويا، تحتاج بعد ذلك إلى تحديث إعدادات تشفير حساب التخزين لاستخدام الإصدار الجديد. أولاً، قم باستدعاء Get-AzKeyVaultKey للحصول على أحدث إصدار من المفتاح. ثم قم باستدعاء az storage account update لتحديث إعدادات تشفير حساب التخزين لاستخدام الإصدار الجديد من المفتاح، كما هو موضح في المثال السابق.
لتكوين المفاتيح التي يديرها العميل مع التحديث اليدوي لإصدار المفتاح، قم بتوفير إصدار المفتاح بشكل صريح عند تكوين التشفير لحساب التخزين. قم باستدعاء تحديث الحساب az storage account update لتحديث إعدادات تشفير حساب التخزين، كما هو موضح في المثال التالي. قم بتضمين المعلمة --encryption-key-source وتعيينها إلى Microsoft.Keyvault لتمكين المفاتيح التي يديرها العميل للحساب.
تذكَّر استبدال قيم العناصر النائبة في الأقواس بقيمك.
accountName="<storage-account>"
keyVaultUri=$(az keyvault show \
--name $kvName \
--resource-group $rgName \
--query properties.vaultUri \
--output tsv)
keyVersion=$(az keyvault key list-versions \
--name $keyName \
--vault-name $kvName \
--query [-1].kid \
--output tsv | cut -d '/' -f 6)
# Use this form of the command with a user-assigned managed identity
az storage account update \
--name $accountName \
--resource-group $rgName \
--identity-type SystemAssigned,UserAssigned \
--user-identity-id $identityResourceId \
--encryption-key-name $keyName \
--encryption-key-version $keyVersion \
--encryption-key-source Microsoft.Keyvault \
--encryption-key-vault $keyVaultUri \
--key-vault-user-identity-id $identityResourceId
# Use this form of the command with a system-assigned managed identity
az storage account update \
--name $accountName \
--resource-group $rgName \
--encryption-key-name $keyName \
--encryption-key-version $keyVersion \
--encryption-key-source Microsoft.Keyvault \
--encryption-key-vault $keyVaultUri
عند تحديث إصدار المفتاح يدويا، تحتاج بعد ذلك إلى تحديث إعدادات تشفير حساب التخزين لاستخدام الإصدار الجديد. أولاً، استعلم عن عنوان URI لمخزن المفاتيح باستدعاء az keyvault show، ولإصدار المفتاح عن طريق استدعاء az keyvault key list-versions. ثم اتصل بـ تحديث حساب التخزين من az لتحديث إعدادات تشفير حساب التخزين لاستخدام الإصدار الجديد من المفتاح ، كما هو موضح في المثال السابق.
غيّر المفتاح
يمكنك تغيير المفتاح الذي تستخدمه لتشفير Azure Storage في أي وقت.
إشعار
عند تغيير المفتاح أو إصدار المفتاح، تتغير حماية مفتاح التشفير الجذر، ولكن تظل البيانات الموجودة في حساب Azure Storage مشفرة في جميع الأوقات. لا يوجد إجراء إضافي مطلوب من جانبك لضمان حماية البيانات. لا يؤثر تغيير المفتاح أو تدوير إصدار المفتاح على الأداء. لا يوجد وقت تعطل مقترن بتغيير المفتاح أو تدوير إصدار المفتاح.
لتغيير المفتاح باستخدام مدخل Azure، اتبع الخطوات التالية:
انتقل إلى حساب التخزين لديك، واعرض إعدادات التشفير.
حدد مخزن المفاتيح، واختر مفتاحاً جديداً.
احفظ تغييراتك.
لتغيير المفتاح من خلال PowerShell، يجب عليك استدعاء Set-AzStorageAccount وتوفير إصدار واسم المفتاح الجديد. إذا كان المفتاح الجديد في مخزن مفاتيح مختلف، يجب عليك أيضاً تحديث عنوان URI لمخزن المفاتيح.
لتغيير المفتاح باستخدام Azure CLI، يجب عليك استدعاء az storage account update وتوفير اسم المفتاح الجديد وإصداره. إذا كان المفتاح الجديد في مخزن مفاتيح مختلف، يجب عليك أيضاً تحديث عنوان URI لمخزن المفاتيح.
إبطال الوصول إلى حساب تخزين يستخدم مفاتيح يديرها العميل
لإبطال الوصول إلى حساب تخزين يستخدم مفاتيح يديرها العميل مؤقتا، قم بتعطيل المفتاح المستخدم حاليا في مخزن المفاتيح. لا يوجد أي تأثير على الأداء أو وقت تعطل مقترن بتعطيل المفتاح وإعادة تمكينه.
بعد تعطيل المفتاح، لا يمكن للعملاء استدعاء العمليات التي تقرأ من أو تكتب إلى كائن ثنائي كبير الحجم أو بيانات التعريف الخاصة به. للحصول على معلومات حول العمليات التي ستفشل، راجع إبطال الوصول إلى حساب تخزين يستخدم مفاتيح يديرها العميل.
تنبيه
عند تعطيل المفتاح في مخزن المفاتيح، تظل البيانات الموجودة في حساب Azure Storage مشفرة، ولكن يصبح الوصول إليها غير قابل للوصول حتى تتمكن من إعادة تمكين المفتاح.
لتعطيل مفتاح مدار من قبل العميل باستخدام مدخل Microsoft Azure، اتبع الخطوات التالية:
انتقل إلى key vault الذي يحتوي على المفتاح.
ضمن Objects، حدد Keys.
انقر بزر الماوس الأيمن فوق المفتاح وحدد تعطيل.
لإبطال مفتاح مدار من قبل العميل باستخدام PowerShell، قم باستدعاء الأمر Update-AzKeyVaultKey ، كما هو موضح في المثال التالي. تذكر استبدال قيم العنصر النائب بين قوسين بالقيم الخاصة بك لتعريف المتغيرات، أو استخدام المتغيرات المعرفة في الأمثلة السابقة.
$kvName = "<key-vault-name>"
$keyName = "<key-name>"
$enabled = $false
# $false to disable the key / $true to enable it
# Check the current state of the key (before and after enabling/disabling it)
Get-AzKeyVaultKey -Name $keyName -VaultName $kvName
# Disable (or enable) the key
Update-AzKeyVaultKey -VaultName $kvName -Name $keyName -Enable $enabled
لإبطال مفتاح مدار من قبل العميل باستخدام Azure CLI، قم باستدعاء الأمر az keyvault key set-attributes ، كما هو موضح في المثال التالي. تذكر استبدال قيم العنصر النائب بين قوسين بالقيم الخاصة بك لتعريف المتغيرات، أو استخدام المتغيرات المعرفة في الأمثلة السابقة.
kvName="<key-vault-name>"
keyName="<key-name>"
enabled="false"
# "false" to disable the key / "true" to enable it:
# Check the current state of the key (before and after enabling/disabling it)
az keyvault key show \
--vault-name $kvName \
--name $keyName
# Disable (or enable) the key
az keyvault key set-attributes \
--vault-name $kvName \
--name $keyName \
--enabled $enabled
التبديل مرة أخرى إلى المفاتيح التي تديرها Microsoft
يمكنك التبديل من المفاتيح التي يديرها العميل مرة أخرى إلى المفاتيح التي تديرها Microsoft في أي وقت، باستخدام مدخل Microsoft Azure أو PowerShell أو Azure CLI.
للتبديل من المفاتيح المدارة من قبل العميل مرة أخرى إلى المفاتيح المدارة من قبل Microsoft في مدخل Microsoft Azure، اتبع الخطوات التالية:
انتقل إلى حساب التخزين الخاص بك.
ضمن Security + networking، حدد Encryption.
تغيير نوع التشفير إلى المفاتيح التي تديرها Microsoft.
للتبديل من المفاتيح المدارة من قبل العميل مرة أخرى إلى المفاتيح المدارة من قبل Microsoft باستخدام PowerShell، اتصل ب Set-AzStorageAccount مع -StorageEncryption الخيار ، كما هو موضح في المثال التالي. تذكر استبدال قيم العناصر النائبة بين قوسين بقيمك الخاصة واستخدام المتغيرات المحددة في الأمثلة السابقة.
للتبديل من المفاتيح المدارة من قبل العميل مرة أخرى إلى المفاتيح المدارة من قبل Microsoft باستخدام Azure CLI، اتصل بتحديث حساب تخزين az وقم بتعيين --encryption-key-source parameter إلى Microsoft.Storage، كما هو موضح في المثال التالي. تذكر استبدال قيم العناصر النائبة بين قوسين بقيمك الخاصة واستخدام المتغيرات المحددة في الأمثلة السابقة.