تمكنك نطاقات التشفير من إدارة التشفير على مستوى كائن ثنائي كبير أو حاوية فردية. يمكنك استخدام نطاقات التشفير لإنشاء حدود آمنة بين البيانات الموجودة في حساب التخزين نفسه ولكنها تنتمي إلى عملاء مختلفين. لمزيد من المعلومات حول نطاقات التشفير، يرجى مراجعةنطاقات التشفير لتخزين كائن ثنائي كبير.
توضح هذه المقالة طريقة إنشاء نطاق تشفير. كما يوضح طريقة تحديد نطاق تشفير عند إنشاء كائن ثنائي كبير أو حاوية.
يمكنك إنشاء نطاق تشفير محمي باستخدام مفتاح مدار بواسطة Microsoft أو باستخدام مفتاح مدار بواسطة العميل يتم تخزينه في Azure Key Vault أو في Azure Key Vault نموذج أمان الأجهزة المدارة (HSM). لإنشاء نطاق تشفير باستخدام مفتاح يديره العميل، يجب عليك أولًا إنشاء مخزن مفاتيح أو HSM مدار وإضافة المفتاح الذي تنوي استخدامه للنطاق. يجب تمكين حماية التطهير في مخزن المفاتيح أو HSM المدار.
يمكن أن يكون حساب التخزين وخزنة المفاتيح في نفس المستأجر، أو في مستأجرين مختلفين. في كلتا الحالتين، يمكن أن يكون حساب التخزين وخزنة المفاتيح في مناطق مختلفة.
يتم تمكين نطاق تشفير تلقائيًا عند إنشائه. بعد إنشاء نطاق التشفير، يمكنك تحديده عند إنشاء كائن ثنائي كبير. يمكنك أيضًا تحديد نطاق تشفير افتراضي عند إنشاء حاوية، والذي ينطبق تلقائيًا على جميع الكائنات الثنائية الكبيرة في الحاوية.
عند تكوين نطاق تشفير، تتم محاسبتك لمدة شهر واحد على الأقل (30 يوما). بعد الشهر الأول، يتم توزيع رسوم نطاق التشفير على أساس كل ساعة. لمزيد من المعلومات، راجع الفوترة لنطاقات التشفير.
لإنشاء نطاق تشفير في مدخل Microsoft Azure، اتبع الخطوات التالية:
انتقل إلى حساب التخزين خاصتك في مدخل Microsoft Azure.
ضمن Security + networking حدد Encryption.
حدد علامة التبويبنطاقات التشفير.
انقر فوق الزرإضافة لإضافة نطاق تشفير جديد.
في جزءإنشاء نطاق تشفير، أدخل اسمًا للنطاق الجديد.
حدد النوع المطلوب من دعم مفاتيح التشفير، إما المفاتيح المدارة من 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 باستخدام المعلمة --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. تذكر استبدال قيم العنصر النائب في المثال بالقيم الخاصة بك:
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، مع تحديد نطاق المعلمة --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 ومرر في المعلمة --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، ومرر في المعلمة، ومرر في المعلمة --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>
عطل أي نطاقات تشفير غير مطلوبة لتجنب الرسوم غير الضرورية. لمزيد من المعلومات، راجع الفوترة لنطاقات التشفير.