تقييد مصدر عمليات النسخ إلى حساب تخزين

لأسباب أمنية، قد يرغب مسؤولو التخزين في تقييد البيئات التي يمكن نسخ البيانات منها إلى حسابات مؤمنة. يساعد الحد من نطاق عمليات النسخ المسموح بها على منع تسلل البيانات غير المرغوب فيها من المستأجرين غير الموثوق بهم أو الشبكات الظاهرية.

توضح لك هذه المقالة كيفية قصر حسابات المصدر لعمليات النسخ على الحسابات داخل نفس المستأجر مثل حساب الوجهة، أو مع ارتباطات خاصة لنفس الشبكة الظاهرية كوجهة.

هام

النطاق المسموح به لعمليات النسخ قيد المعاينة حاليا. للحصول على الشروط القانونية التي تنطبق على ميزات Azure الموجودة في الإصدار التجريبي، أو المعاينة، أو التي لم يتم إصدارها بعد في التوفر العام، راجع شروط الاستخدام التكميلية لمعاينات Microsoft Azure.

حول النطاق المسموح به لعمليات النسخ (معاينة)

يتم استخدام الخاصية AllowedCopyScope لحساب تخزين لتحديد البيئات التي يمكن نسخ البيانات منها إلى حساب الوجهة. يتم عرضه في مدخل Microsoft Azure كإعداد تكوين النطاق المسموح به لعمليات النسخ (معاينة). لم يتم تعيين الخاصية بشكل افتراضي ولا ترجع قيمة حتى تقوم بتعيينها بشكل صريح. يحتوي على ثلاث قيم محتملة:

  • (خال) (افتراضي): السماح بالنسخ من أي حساب تخزين إلى حساب الوجهة.
  • معرف Microsoft Entra: يسمح بالنسخ فقط من الحسابات داخل نفس مستأجر Microsoft Entra كحساب الوجهة.
  • PrivateLink: يسمح بالنسخ فقط من حسابات التخزين التي تحتوي على ارتباطات خاصة إلى نفس الشبكة الظاهرية مثل حساب الوجهة.

ينطبق الإعداد على عمليات Copy Blob و Copy Blob From URL . أمثلة على الأدوات التي تستخدم Copy Blob هي AzCopy وAzure Storage Explorer.

عندما لا يفي مصدر طلب النسخ بالمتطلبات المحددة بواسطة هذا الإعداد، يفشل الطلب مع رمز حالة HTTP 403 (ممنوع).

يتم دعم الخاصية AllowedCopyScope لحسابات التخزين التي تستخدم نموذج توزيع Azure Resource Manager فقط. لمزيد من المعلومات حول حسابات التخزين التي تستخدم نموذج توزيع Azure Resource Manager، راجع أنواع حسابات التخزين.

تحديد حسابات التخزين المصدر لعمليات النسخ

قبل تغيير قيمة AllowedCopyScope لحساب تخزين، حدد المستخدمين أو التطبيقات أو الخدمات التي ستتأثر بالتغيير. اعتمادا على النتائج التي توصلت إليها، قد يكون من الضروري ضبط الإعداد إلى نطاق يتضمن جميع مصادر النسخ المطلوبة، أو لضبط الشبكة أو تكوين Microsoft Entra لبعض حسابات التخزين المصدر.

تسجل سجلات Azure Storage تفاصيل في Azure Monitor حول الطلبات المقدمة مقابل حساب التخزين، بما في ذلك مصدر ووجهة عمليات النسخ. للحصول على مزيدٍ من المعلومات، راجع مراقبة تخزين Azure. تمكين وتحليل السجلات لتحديد عمليات النسخ التي قد تتأثر بتغيير AllowedCopyScope لحساب التخزين الوجهة.

إنشاء إعداد تشخيصي في مدخل Microsoft Azure

لتسجيل بيانات Azure Storage باستخدام Azure Monitor وتحليلها باستخدام Azure Log Analytics، يجب أولا إنشاء إعداد تشخيص يشير إلى أنواع الطلبات وخدمات التخزين التي تريد تسجيل البيانات لها. لإنشاء إعداد تشخيص في مدخل Azure، اتبع الخطوات التالية:

  1. قم بإنشاء مساحة عمل Log Analytics جديدة في الاشتراك الذي يحتوي على حساب Azure Storage الخاص بك، أو استخدم مساحة عمل Log Analytics موجودة. بعد تكوين تسجيل الدخول لحساب التخزين خاصتك، ستكون السجلات متاحة في مساحة عمل Log Analytics. لمزيد من المعلومات، راجع إنشاء مساحة عمل "Log Analytics" في مدخل ةMicrosoft Azure.

  2. انتقل إلى حساب التخزين خاصتك في مدخل Microsoft Azure.

  3. في قسم Monitoring، حدد Diagnostic settings.

  4. حدد خدمة Azure Storage التي تريد تسجيل الطلبات الخاصة بها. على سبيل المثال، اختر blob لتسجيل الطلبات إلى Blob Storage.

  5. حدد Add diagnostic setting.

  6. أدخل اسمًا لإعداد التشخيص.

  7. ضمن Categories، في قسم Logs، اختر StorageRead وStorageWrite وStorageDelete لتسجيل جميع طلبات البيانات إلى الخدمة المحددة.

  8. ضمن Destination details، حدد Send to Log Analytics workspace. حدد اشتراكك ومساحة عمل Log Analytics التي أنشأتها سابقا، كما هو موضح في الصورة التالية، ثم حدد حفظ.

    Screenshot showing how to create a diagnostic setting for logging requests.

بعد إنشاء إعداد التشخيص، تُسَجل الطلبات إلى حساب التخزين لاحقًا وفقًا لذلك الإعداد. لمزيد من المعلومات، راجع إنشاء إعداد تشخيصي لجمع سجلات الموارد والمقاييس في Azure.

سجلات الاستعلام لطلبات النسخ

تتضمن سجلات Azure Storage جميع طلبات نسخ البيانات إلى حساب تخزين من مصدر آخر. تتضمن إدخالات السجل اسم حساب التخزين الوجهة وURI للكائن المصدر، بالإضافة إلى المعلومات للمساعدة في تحديد العميل الذي يطلب النسخة. للحصول على مرجع كامل للحاويات المتوفرة في سجلات Azure Storage في Azure Monitor، راجع سجلات الموارد.

لاسترداد سجلات طلبات نسخ الكائنات الثنائية كبيرة الحجم التي تم إجراؤها في الأيام السبعة الماضية، اتبع الخطوات التالية:

  1. انتقل إلى حساب التخزين خاصتك في مدخل Microsoft Azure.

  2. في قسم Monitoring، حدد Logs.

  3. الصق الاستعلام التالي في استعلام سجل جديد وقم بتشغيله. يعرض هذا الاستعلام الكائنات المصدر التي تتم الإشارة إليها بشكل متكرر في طلبات نسخ البيانات إلى حساب التخزين المحدد. في المثال التالي، استبدل نص <account-name> العنصر النائب باسم حساب التخزين الخاص بك.

    StorageBlobLogs
    | where OperationName has "CopyBlobSource" and TimeGenerated > ago(7d) and AccountName == "<account-name>"
    | summarize count() by Uri, CallerIpAddress, UserAgentHeader
    

يجب أن تبدو نتائج الاستعلام مشابهة للآتي:

Screenshot showing how a Copy Blob Source log query might look.

URI هو المسار الكامل للكائن المصدر الذي يتم نسخه، والذي يتضمن اسم حساب التخزين واسم الحاوية واسم الملف. من قائمة معرفات URI، حدد ما إذا كان سيتم حظر عمليات النسخ إذا تم تطبيق إعداد AllowedCopyScope محدد.

يمكنك أيضا تكوين قاعدة تنبيه استنادا إلى هذا الاستعلام لإعلامك بنسخ طلبات Blob للحساب. لمزيد من المعلومات، راجع إنشاء وعرض وإدارة تنبيهات السجل باستخدام شاشة Azure .

تقييد النطاق المسموح به لعمليات النسخ (معاينة)

عندما تكون واثقا من أنه يمكنك تقييد مصادر طلبات النسخ بأمان إلى نطاق معين، يمكنك تعيين الخاصية AllowedCopyScope لحساب التخزين إلى هذا النطاق.

أذونات لتغيير النطاق المسموح به لعمليات النسخ (معاينة)

لتعيين الخاصية AllowedCopyScope لحساب التخزين، يجب أن يكون لدى المستخدم أذونات لإنشاء حسابات التخزين وإدارتها. تتضمن أدوار Azure للتحكم في الوصول القائم على الأدوار (Azure RBAC) التي توفر هذه الأذونات إجراء Microsoft.Storage/storageAccounts/write أو Microsoft.Storage/storageAccounts/*. وتشمل الأدوار المدمجة مع هذا الإجراء ما يلي:

لا توفر هذه الأدوار الوصول إلى البيانات في حساب تخزين عبر معرف Microsoft Entra. ومع ذلك، فهي تشمل Microsoft.Storage/storageAccounts/listkeys/action، الذي يتيح الوصول إلى مفاتيح الوصول إلى الحساب. وبهذا الإذن، يمكن للمستخدم استخدام مفاتيح الوصول إلى الحساب للوصول إلى جميع البيانات في حساب التخزين.

يجب تحديد نطاق تعيينات الدور إلى مستوى حساب التخزين أو أعلى للسماح للمستخدم بتقييد نطاق عمليات النسخ للحساب. لمزيد من المعلومات حول نطاق الدور، راجع فهم نطاق التحكم في الوصول استنادًا إلى الدور من Azure.

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

إشعار

تشمل أدوار مسؤول الاشتراك الكلاسيكي مسؤول الخدمة والمسؤول المشارك ما يعادل دور Azure Resource Managerالمالك. يتضمن دور Owner جميع الإجراءات، لذلك يمكن للمستخدم الذي لديه أحد هذه الأدوار الإدارية أيضًا إنشاء حسابات التخزين وإدارتها. لمزيد من المعلومات، راجع أدوار Azure وأدوار Microsoft Entra وأدوار مسؤول الاشتراك الكلاسيكي.

تكوين النطاق المسموح به لعمليات النسخ (معاينة)

باستخدام حساب لديه الأذونات اللازمة، قم بتكوين النطاق المسموح به لعمليات النسخ في مدخل Microsoft Azure، باستخدام PowerShell أو باستخدام Azure CLI.

لتكوين النطاق المسموح به لعمليات النسخ لحساب تخزين موجود في مدخل Microsoft Azure، اتبع الخطوات التالية:

  1. انتقل إلى حساب التخزين خاصتك في مدخل Microsoft Azure.

  2. ضمن الإعدادات، حدد Configuration.

  3. تعيين النطاق المسموح به لعمليات النسخ (معاينة) إلى أحد الإجراءات التالية:

    • من أي حساب تخزين
    • من حسابات التخزين في نفس مستأجر Microsoft Entra
    • من حسابات التخزين التي تحتوي على نقطة نهاية خاصة إلى نفس الشبكة الظاهرية

    Screenshot showing how to disallow Shared Key access for a storage account.

  4. حدد حفظ.

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