تمكنك نطاقات التشفير من إدارة التشفير على مستوى كائن ثنائي كبير الحجم أو حاوية فردية. يمكنك استخدام نطاقات التشفير لإنشاء حدود آمنة بين البيانات الموجودة في حساب التخزين نفسه ولكنها تنتمي إلى عملاء مختلفين. لمزيد من المعلومات حول نطاقات التشفير، يرجى مراجعةنطاقات التشفير لتخزين كائن ثنائي كبير.
توضح هذه المقالة كيفية إنشاء نطاق تشفير. كما يوضح كيفية تحديد نطاق تشفير عند إنشاء كائن ثنائي كبير الحجم أو حاوية.
يمكنك إنشاء نطاق تشفير محمي بمفتاح مدار من قبل Microsoft أو بمفتاح مدار من قبل العميل مخزن في Azure Key Vault أو في نموذج أمان الأجهزة المدار من Azure Key Vault (HSM). لإنشاء نطاق تشفير باستخدام مفتاح مدار من قبل العميل، يجب أولا إنشاء مخزن مفاتيح أو HSM مدار وإضافة المفتاح الذي تنوي استخدامه للنطاق. يجب تمكين حماية التطهير في مخزن المفاتيح أو HSM المدار.
يمكن أن يكون حساب التخزين وخزنة المفاتيح في نفس المستأجر، أو في مستأجرين مختلفين. في كلتا الحالتين، يمكن أن يكون حساب التخزين وخزنة المفاتيح في مناطق مختلفة.
يتم تمكين نطاق التشفير تلقائيا عند إنشائه. بعد إنشاء نطاق التشفير، يمكنك تحديده عند إنشاء كائن ثنائي كبير الحجم. يمكنك أيضا تحديد نطاق تشفير افتراضي عند إنشاء حاوية، والتي تنطبق تلقائيا على جميع الكائنات الثنائية كبيرة الحجم في الحاوية.
عند تكوين نطاق تشفير، تتم محاسبتك لمدة شهر واحد على الأقل (30 يوما). بعد الشهر الأول، يتم توزيع رسوم نطاق التشفير على أساس كل ساعة. لمزيد من المعلومات، راجع الفوترة لنطاقات التشفير.
لإنشاء نطاق تشفير في مدخل Microsoft Azure، اتبع الخطوات التالية:
انتقل إلى حساب التخزين خاصتك في مدخل Microsoft Azure.
ضمن Security + networking حدد Encryption.
حدد علامة التبويب نطاقات التشفير .
انقر فوق الزر Add لإضافة نطاق تشفير جديد.
في جزء Create Encryption Scope ، أدخل اسما للنطاق الجديد.
حدد النوع المطلوب من دعم مفتاح التشفير، إما المفاتيح التي تديرها Microsoft أو المفاتيح التي يديرها العميل.
- إذا حددت مفاتيح مدارة من Microsoft، فانقر فوق إنشاء لإنشاء نطاق التشفير.
- إذا حددت مفاتيح يديرها العميل، فحدد اشتراكا وحدد مخزن مفاتيح ومفتاحا لاستخدامه لنطاق التشفير هذا. إذا كان مخزن المفاتيح المطلوب في منطقة مختلفة، فحدد Enter key URI وحدد مفتاح URI.
إذا تم تمكين تشفير البنية الأساسية لحساب التخزين، تمكينه تلقائيا لنطاق التشفير الجديد. وإلا، يمكنك اختيار ما إذا كنت تريد تمكين تشفير البنية الأساسية لنطاق التشفير.
لإنشاء نطاق تشفير باستخدام PowerShell، قم بتثبيت الوحدة النمطية Az.Storage PowerShell، الإصدار 3.4.0 أو أحدث.
إنشاء نطاق تشفير محمي بواسطة مفاتيح تديرها Microsoft
لإنشاء نطاق تشفير محمي بواسطة مفاتيح تديرها Microsoft، قم باستدعاء الأمر New-AzStorageEncryptionScope باستخدام المعلمة -StorageEncryption
.
إذا تم تمكين تشفير البنية الأساسية لحساب التخزين، تمكينه تلقائيا لنطاق التشفير الجديد. وإلا، يمكنك اختيار ما إذا كنت تريد تمكين تشفير البنية الأساسية لنطاق التشفير. لإنشاء النطاق الجديد مع تمكين تشفير البنية الأساسية، قم بتضمين المعلمة -RequireInfrastructureEncryption
.
تذكر استبدال قيم العنصر النائب في المثال بالقيم الخاصة بك:
$rgName = "<resource-group>"
$accountName = "<storage-account>"
$scopeName = "<encryption-scope>"
New-AzStorageEncryptionScope -ResourceGroupName $rgName `
-StorageAccountName $accountName `
-EncryptionScopeName $scopeName1 `
-StorageEncryption
إنشاء نطاق تشفير محمي بواسطة مفاتيح يديرها العميل في نفس المستأجر
لإنشاء نطاق تشفير محمي بواسطة مفاتيح يديرها العميل مخزنة في مخزن مفاتيح أو HSM مدار في نفس المستأجر مثل حساب التخزين، قم أولا بتكوين المفاتيح المدارة من قبل العميل لحساب التخزين. يجب تعيين هوية مدارة لحساب التخزين الذي لديه أذونات للوصول إلى مخزن المفاتيح. يمكن أن تكون الهوية المدارة إما هوية مدارة يعينها المستخدم أو هوية مدارة معينة من قبل النظام. لمعرفة المزيد حول تكوين المفاتيح المدارة من قبل العميل، راجع تكوين المفاتيح المدارة من قبل العميل في نفس المستأجر لحساب تخزين موجود.
لمنح أذونات الهوية المدارة للوصول إلى مخزن المفاتيح، قم بتعيين دور مستخدم تشفير خدمة تشفير Key Vault للهوية المدارة.
لتكوين المفاتيح المدارة من قبل العميل للاستخدام مع نطاق تشفير، يجب تمكين حماية التطهير على مخزن المفاتيح أو HSM المدار.
يوضح المثال التالي كيفية تكوين نطاق تشفير بهوية مدارة معينة من قبل النظام. تذكر استبدال قيم العنصر النائب في المثال بالقيم الخاصة بك:
$rgName = "<resource-group>"
$accountName = "<storage-account>"
$keyVaultName = "<key-vault>"
$scopeName = "<encryption-scope>"
# Assign a system-assigned managed identity to the storage account.
$storageAccount = Set-AzStorageAccount -ResourceGroupName $rgName `
-Name $accountName `
-AssignIdentity
# Assign the necessary permissions to the managed identity
# so that it can access the key vault.
$principalId = $storageAccount.Identity.PrincipalId
$keyVault = Get-AzKeyVault $keyVaultName
New-AzRoleAssignment -ObjectId $storageAccount.Identity.PrincipalId `
-RoleDefinitionName "Key Vault Crypto Service Encryption User" `
-Scope $keyVault.ResourceId
بعد ذلك، قم باستدعاء الأمر New-AzStorageEncryptionScope مع المعلمة -KeyvaultEncryption
، وحدد مفتاح URI. يعد تضمين الإصدار الرئيسي على مفتاح URI اختياريا. إذا حذفت إصدار المفتاح، فسيستخدم نطاق التشفير تلقائيا أحدث إصدار مفتاح. إذا قمت بتضمين إصدار المفتاح، فيجب عليك تحديث إصدار المفتاح يدويا لاستخدام إصدار مختلف.
تنسيق مفتاح URI مشابه للأمثلة التالية ويمكن إنشاؤه من خاصية VaultUri لمخزن المفاتيح واسم المفتاح:
# Without the key version
https://<key-vault>.vault.azure.net/keys/<key>
# With the key version
https://<key-vault>.vault.azure.net/keys/<key>/<version>
إذا تم تمكين تشفير البنية الأساسية لحساب التخزين، تمكينه تلقائيا لنطاق التشفير الجديد. وإلا، يمكنك اختيار ما إذا كنت تريد تمكين تشفير البنية الأساسية لنطاق التشفير. لإنشاء النطاق الجديد مع تمكين تشفير البنية الأساسية، قم بتضمين المعلمة -RequireInfrastructureEncryption
.
تذكر استبدال قيم العنصر النائب في المثال بالقيم الخاصة بك:
$keyUri = $keyVault.VaultUri + "keys/" + $keyName
New-AzStorageEncryptionScope -ResourceGroupName $rgName `
-StorageAccountName $accountName `
-EncryptionScopeName $scopeName `
-KeyUri $keyUri `
-KeyvaultEncryption
إنشاء نطاق تشفير محمي بواسطة مفاتيح يديرها العميل في مستأجر مختلف
لإنشاء نطاق تشفير محمي بواسطة مفاتيح يديرها العميل مخزنة في مخزن مفاتيح أو HSM مدار في مستأجر مختلف عن حساب التخزين، قم أولا بتكوين المفاتيح المدارة من قبل العميل لحساب التخزين. يجب تكوين هوية مدارة معينة من قبل المستخدم لحساب التخزين الذي لديه أذونات للوصول إلى مخزن المفاتيح في المستأجر الآخر. لمعرفة المزيد حول تكوين المفاتيح المدارة من قبل العملاء عبر المستأجرين، راجع تكوين المفاتيح المدارة من قبل العملاء عبر المستأجرين لحساب تخزين موجود.
لتكوين المفاتيح المدارة من قبل العميل للاستخدام مع نطاق تشفير، يجب تمكين حماية التطهير على مخزن المفاتيح أو HSM المدار.
بعد تكوين مفاتيح مدارة من قبل العملاء عبر المستأجرين لحساب التخزين، يمكنك إنشاء نطاق تشفير على حساب التخزين في مستأجر واحد يتم تحديد نطاقه إلى مفتاح في مخزن مفاتيح في المستأجر الآخر. ستحتاج إلى مفتاح URI لإنشاء نطاق التشفير عبر المستأجرين.
تذكر استبدال قيم العنصر النائب في المثال بالقيم الخاصة بك:
$rgName = "<resource-group>"
$accountName = "<storage-account>"
$scopeName = "<encryption-scope>"
# Construct the key URI from the key vault URI and key name.
$keyUri = $kvUri + "keys/" + $keyName
New-AzStorageEncryptionScope -ResourceGroupName $rgName `
-StorageAccountName $accountName `
-EncryptionScopeName $scopeName `
-KeyUri $keyUri `
-KeyvaultEncryption
لإنشاء نطاق تشفير باستخدام Azure CLI، قم أولا بتثبيت الإصدار 2.20.0 من Azure CLI أو أحدث.
إنشاء نطاق تشفير محمي بواسطة مفاتيح تديرها Microsoft
لإنشاء نطاق تشفير محمي بواسطة مفاتيح تديرها Microsoft، قم باستدعاء الأمر az storage account encryption-scope create ، مع تحديد المعلمة --key-source
على أنها Microsoft.Storage
.
إذا تم تمكين تشفير البنية الأساسية لحساب التخزين، تمكينه تلقائيا لنطاق التشفير الجديد. وإلا، يمكنك اختيار ما إذا كنت تريد تمكين تشفير البنية الأساسية لنطاق التشفير. لإنشاء النطاق الجديد مع تمكين تشفير البنية الأساسية، قم بتضمين المعلمة --require-infrastructure-encryption
وتعيين قيمتها إلى true
.
تذكر أن تستبدل قيم العنصر النائب بقيمك الخاصة:
az storage account encryption-scope create \
--resource-group <resource-group> \
--account-name <storage-account> \
--name <encryption-scope> \
--key-source Microsoft.Storage
إنشاء نطاق تشفير محمي بواسطة مفاتيح يديرها العميل في نفس المستأجر
لإنشاء نطاق تشفير محمي بواسطة مفاتيح يديرها العميل مخزنة في مخزن مفاتيح أو HSM مدار في نفس المستأجر مثل حساب التخزين، قم أولا بتكوين المفاتيح المدارة من قبل العميل لحساب التخزين. يجب تعيين هوية مدارة لحساب التخزين الذي لديه أذونات للوصول إلى مخزن المفاتيح. يمكن أن تكون الهوية المدارة إما هوية مدارة يعينها المستخدم أو هوية مدارة معينة من قبل النظام. لمعرفة المزيد حول تكوين المفاتيح المدارة من قبل العميل، راجع تكوين المفاتيح المدارة من قبل العميل في نفس المستأجر لحساب تخزين موجود.
لمنح أذونات الهوية المدارة للوصول إلى مخزن المفاتيح، قم بتعيين دور مستخدم تشفير خدمة تشفير Key Vault للهوية المدارة.
لتكوين المفاتيح المدارة من قبل العميل للاستخدام مع نطاق تشفير، يجب تمكين حماية التطهير على مخزن المفاتيح أو HSM المدار.
يوضح المثال التالي كيفية تكوين نطاق تشفير بهوية مدارة معينة من قبل النظام. تذكر استبدال قيم العنصر النائب في المثال بالقيم الخاصة بك:
az storage account update \
--name <storage-account> \
--resource-group <resource_group> \
--assign-identity
principalId=$(az storage account show --name <storage-account> \
--resource-group <resource_group> \
--query identity.principalId \
--output tsv)
$kvResourceId=$(az keyvault show \
--resource-group <resource-group> \
--name <key-vault> \
--query id \
--output tsv)
az role assignment create --assignee-object-id $principalId \
--role "Key Vault Crypto Service Encryption User" \
--scope $kvResourceId
بعد ذلك، قم باستدعاء الأمر az storage account encryption-scope مع المعلمة --key-uri
، وحدد مفتاح URI. يعد تضمين الإصدار الرئيسي على مفتاح URI اختياريا. إذا حذفت إصدار المفتاح، فسيستخدم نطاق التشفير تلقائيا أحدث إصدار مفتاح. إذا قمت بتضمين إصدار المفتاح، فيجب عليك تحديث إصدار المفتاح يدويا لاستخدام إصدار مختلف.
تنسيق مفتاح URI مشابه للأمثلة التالية ويمكن إنشاؤه من خاصية vaultUri لمخزن المفاتيح واسم المفتاح:
# Without the key version
https://<key-vault>.vault.azure.net/keys/<key>
# With the key version
https://<key-vault>.vault.azure.net/keys/<key>/<version>
إذا تم تمكين تشفير البنية الأساسية لحساب التخزين، تمكينه تلقائيا لنطاق التشفير الجديد. وإلا، يمكنك اختيار ما إذا كنت تريد تمكين تشفير البنية الأساسية لنطاق التشفير. لإنشاء النطاق الجديد مع تمكين تشفير البنية الأساسية، قم بتضمين المعلمة --require-infrastructure-encryption
وتعيين قيمتها إلى true
.
تذكر استبدال قيم العنصر النائب في المثال بالقيم الخاصة بك:
az storage account encryption-scope create \
--resource-group <resource-group> \
--account-name <storage-account> \
--name <encryption-scope> \
--key-source Microsoft.KeyVault \
--key-uri <key-uri>
إنشاء نطاق تشفير محمي بواسطة مفاتيح يديرها العميل في مستأجر مختلف
لإنشاء نطاق تشفير محمي بواسطة مفاتيح يديرها العميل مخزنة في مخزن مفاتيح أو HSM مدار في مستأجر مختلف عن حساب التخزين، قم أولا بتكوين المفاتيح المدارة من قبل العميل لحساب التخزين. يجب تكوين هوية مدارة معينة من قبل المستخدم لحساب التخزين الذي لديه أذونات للوصول إلى مخزن المفاتيح في المستأجر الآخر. لمعرفة المزيد حول تكوين المفاتيح المدارة من قبل العملاء عبر المستأجرين، راجع تكوين المفاتيح المدارة من قبل العملاء عبر المستأجرين لحساب تخزين موجود.
لتكوين المفاتيح المدارة من قبل العميل للاستخدام مع نطاق تشفير، يجب تمكين حماية التطهير على مخزن المفاتيح أو HSM المدار.
بعد تكوين مفاتيح مدارة من قبل العملاء عبر المستأجرين لحساب التخزين، يمكنك إنشاء نطاق تشفير على حساب التخزين في مستأجر واحد يتم تحديد نطاقه إلى مفتاح في مخزن مفاتيح في المستأجر الآخر. ستحتاج إلى مفتاح URI لإنشاء نطاق التشفير عبر المستأجرين.
تذكر استبدال قيم العنصر النائب في المثال بالقيم الخاصة بك:
az storage account encryption-scope create \
--resource-group <resource-group> \
--account-name <storage-account> \
--name <encryption-scope> \
--key-source Microsoft.KeyVault \
--key-uri <key-uri>
لعرض نطاقات التشفير لحساب تخزين في مدخل Microsoft Azure، انتقل إلى إعداد نطاقات التشفير لحساب التخزين. من هذا الجزء، يمكنك تمكين نطاق تشفير أو تعطيله أو تغيير المفتاح لنطاق تشفير.
لعرض تفاصيل مفتاح مدار من قبل العميل، بما في ذلك مفتاح URI والإصدار وما إذا كان يتم تحديث إصدار المفتاح تلقائيا، اتبع الارتباط الموجود في عمود المفتاح .
لسرد نطاقات التشفير المتوفرة لحساب تخزين باستخدام PowerShell، قم باستدعاء الأمر Get-AzStorageEncryptionScope . تذكر استبدال قيم العنصر النائب في المثال بالقيم الخاصة بك:
Get-AzStorageEncryptionScope -ResourceGroupName $rgName `
-StorageAccountName $accountName
لسرد كافة نطاقات التشفير في مجموعة موارد حسب حساب التخزين، استخدم بناء جملة البنية الأساسية لبرنامج ربط العمليات التجارية:
Get-AzStorageAccount -ResourceGroupName $rgName | Get-AzStorageEncryptionScope
لسرد نطاقات التشفير المتوفرة لحساب تخزين باستخدام Azure CLI، قم باستدعاء الأمر az storage account encryption-scope list . تذكر استبدال قيم العنصر النائب في المثال بالقيم الخاصة بك:
az storage account encryption-scope list \
--account-name <storage-account> \
--resource-group <resource-group>
عند إنشاء حاوية، يمكنك تحديد نطاق تشفير افتراضي. ستستخدم الكائنات الثنائية كبيرة الحجم في تلك الحاوية هذا النطاق بشكل افتراضي.
يمكن إنشاء كائن ثنائي كبير الحجم فردي مع نطاق التشفير الخاص به، ما لم يتم تكوين الحاوية لمطالبة جميع الكائنات الثنائية كبيرة الحجم باستخدام النطاق الافتراضي. لمزيد من المعلومات، راجع نطاقات التشفير للحاويات والكائنات الثنائية كبيرة الحجم.
لإنشاء حاوية ذات نطاق تشفير افتراضي في مدخل Microsoft Azure، قم أولا بإنشاء نطاق التشفير كما هو موضح في إنشاء نطاق تشفير. بعد ذلك، اتبع هذه الخطوات لإنشاء الحاوية:
انتقل إلى قائمة الحاويات في حساب التخزين الخاص بك، وحدد الزر Add لإنشاء حاوية.
قم بتوسيع الإعدادات المتقدمة في جزء حاوية جديدة .
في القائمة المنسدلة نطاق التشفير ، حدد نطاق التشفير الافتراضي للحاوية.
لمطالبة كافة الكائنات الثنائية كبيرة الحجم في الحاوية باستخدام نطاق التشفير الافتراضي، حدد خانة الاختيار لاستخدام نطاق التشفير هذا لجميع الكائنات الثنائية كبيرة الحجم في الحاوية. إذا تم تحديد خانة الاختيار هذه، فلن يتمكن كائن ثنائي كبير الحجم فردي في الحاوية من تجاوز نطاق التشفير الافتراضي.
لإنشاء حاوية ذات نطاق تشفير افتراضي باستخدام PowerShell، قم باستدعاء الأمر New-AzStorageContainer ، مع تحديد نطاق المعلمة -DefaultEncryptionScope
. لفرض كافة الكائنات الثنائية كبيرة الحجم في حاوية لاستخدام النطاق الافتراضي للحاوية، قم بتعيين المعلمة -PreventEncryptionScopeOverride
إلى true
.
$containerName1 = "container1"
$ctx = New-AzStorageContext -StorageAccountName $accountName -UseConnectedAccount
# Create a container with a default encryption scope that cannot be overridden.
New-AzStorageContainer -Name $containerName1 `
-Context $ctx `
-DefaultEncryptionScope $scopeName1 `
-PreventEncryptionScopeOverride $true
لإنشاء حاوية ذات نطاق تشفير افتراضي باستخدام Azure CLI، قم باستدعاء الأمر az storage container create ، مع تحديد نطاق المعلمة --default-encryption-scope
. لفرض كافة الكائنات الثنائية كبيرة الحجم في حاوية لاستخدام النطاق الافتراضي للحاوية، قم بتعيين المعلمة --prevent-encryption-scope-override
إلى true
.
يستخدم المثال التالي حساب Microsoft Entra الخاص بك لتخويل العملية لإنشاء الحاوية. يمكنك أيضا استخدام مفتاح الوصول إلى الحساب. لمزيد من المعلومات، راجع تخويل الوصول إلى بيانات النقطة أو قائمة الانتظار باستخدام Azure CLI.
az storage container create \
--account-name <storage-account> \
--resource-group <resource-group> \
--name <container> \
--default-encryption-scope <encryption-scope> \
--prevent-encryption-scope-override true \
--auth-mode login
إذا حاول عميل تحديد نطاق عند تحميل كائن ثنائي كبير الحجم إلى حاوية تحتوي على نطاق تشفير افتراضي وتم تكوين الحاوية لمنع الكائنات الثنائية كبيرة الحجم من تجاوز النطاق الافتراضي، فستفشل العملية مع ظهور رسالة تشير إلى أن الطلب محظور بواسطة نهج تشفير الحاوية.
عند تحميل كائن ثنائي كبير الحجم، يمكنك تحديد نطاق تشفير لهذا الكائن الثنائي كبير الحجم، أو استخدام نطاق التشفير الافتراضي للحاوية، إذا تم تحديد واحد.
لتغيير المفتاح الذي يحمي نطاق في مدخل Microsoft Azure، اتبع الخطوات التالية:
- انتقل إلى علامة التبويب نطاقات التشفير لعرض قائمة نطاقات التشفير لحساب التخزين.
- حدد الزر المزيد بجوار النطاق الذي ترغب في تعديله.
- في جزء تحرير نطاق التشفير ، يمكنك تغيير نوع التشفير من المفتاح المدار من Microsoft إلى المفتاح المدار بواسطة العميل أو العكس.
- لتحديد مفتاح جديد يديره العميل، حدد استخدام مفتاح جديد وحدد مخزن المفاتيح والمفتاح وإصدار المفتاح.
لتغيير المفتاح الذي يحمي نطاق تشفير من مفتاح مدار من قبل العميل إلى مفتاح مدار من قبل Microsoft باستخدام PowerShell، قم باستدعاء الأمر Update-AzStorageEncryptionScope ومرر المعلمة -StorageEncryption
:
Update-AzStorageEncryptionScope -ResourceGroupName $rgName `
-StorageAccountName $accountName `
-EncryptionScopeName $scopeName2 `
-StorageEncryption
بعد ذلك، قم باستدعاء الأمر Update-AzStorageEncryptionScope ومرر -KeyUri
المعلمات و -KeyvaultEncryption
:
Update-AzStorageEncryptionScope -ResourceGroupName $rgName `
-StorageAccountName $accountName `
-EncryptionScopeName $scopeName1 `
-KeyUri $keyUri `
-KeyvaultEncryption
لتغيير المفتاح الذي يحمي نطاق تشفير من مفتاح مدار من قبل العميل إلى مفتاح مدار من قبل Microsoft باستخدام Azure CLI، قم باستدعاء الأمر az storage account encryption-scope update وقم بتمرير المعلمة --key-source
بالقيمة Microsoft.Storage
:
az storage account encryption-scope update \
--account-name <storage-account> \
--resource-group <resource-group>
--name <encryption-scope> \
--key-source Microsoft.Storage
بعد ذلك، قم باستدعاء الأمر az storage account encryption-scope update ، ومرر المعلمة --key-uri
، ومرر المعلمة --key-source
بالقيمة Microsoft.KeyVault
:
az storage account encryption-scope update \
--resource-group <resource-group> \
--account-name <storage-account> \
--name <encryption-scope> \
--key-source Microsoft.KeyVault \
--key-uri <key-uri>
عطل أي نطاقات تشفير غير مطلوبة لتجنب الرسوم غير الضرورية. لمزيد من المعلومات، راجع الفوترة لنطاقات التشفير.