أفضل الممارسات لتأمين تطبيقات الويب والجوال لـ PaaS باستخدام Azure Storage

في هذه المقالة، نناقش مجموعة من أفضل ممارسات أمان Azure Storage لتأمين تطبيقات الويب والجوال للنظام الأساسي كخدمة (PaaS). تُستمد أفضل الممارسات هذه من تجربتنا مع Azure وتجارب عملاء مثلك.

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

يوفر Azure Storage الخدمات الأربع التالية: تخزين الكائنات الثنائية كبيرة الحجم وتخزين الجدول وتخزين قائمة الانتظار وتخزين الملفات. لمعرفة المزيد، راجع مقدمة عن Microsoft Azure Storage.

تتناول هذه المقالة أفضل الممارسات التالية:

  • توقيع الوصول المشترك (SAS)
  • التحكم في الوصول المستند إلى الدور في Azure (Azure RBAC)
  • التشفير من جانب العميل للبيانات عالية القيمة
  • Storage Service Encryption

استخدام توقيع وصول مشترك بدلاً من مفتاح حساب تخزين

التحكم في الوصول أمر بالغ الأهمية. لمساعدتك على التحكم في الوصول إلى Azure Storage، يُنشئ Azure مفتاحي حساب تخزين 512 بت (SAKs) عند إنشاء حساب تخزين. يتيح لك مستوى تكرار المفتاح تجنب انقطاع الخدمة أثناء تدوير المفتاح الروتيني.

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

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

  • الفاصل الزمني الذي يكون فيه SAS صالحاً، بما في ذلك وقت البدء ووقت انتهاء الصلاحية.
  • الأذونات الممنوحة من قَِبل SAS. على سبيل المثال، قد يمنح SAS على كائن ثنائي كبير الحجم للمستخدم أذونات القراءة والكتابة إلى ذلك الكائن، وليس أذونات حذف.
  • عنوان IP اختياري أو نطاق عناوين IP التي تقبل خدمة Azure Storage توقيع الوصول المشترك (SAS) منها. على سبيل المثال، قد تحدد نطاقاً من عناوين IP المنتمية للمؤسسة. يوفر هذا مقياسًا آخر للأمان لـ SAS.
  • البروتوكول الذي تقبل خدمة Azure Storage توقيع الوصول المشترك عبره. يمكنك استخدام هذه المعلمة الاختيارية لتقييد الوصول إلى العملاء الذين يستخدمون HTTPS.

يسمح لك SAS بمشاركة المحتوى بالطريقة التي تريد مشاركتها به دون التخلي عن مفاتيح حساب التخزين. دائمًا ما يعتبر استخدام SAS في تطبيقك طريقة آمنة لمشاركة موارد التخزين لديك دون المساس بمفاتيح حساب التخزين.

لمعرفة المزيد حول توقيع الوصول المشترك، راجع استخدام توقيعات الوصول المشترك.

استخدام التحكم في الوصول القائم على الأدوار Azure

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

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

قد تمنح المؤسسات التي لا تفرض التحكم في الوصول إلى البيانات باستخدام قدرات مثل Azure RBAC امتيازات أكثر من الضروري لمستخدميها. يمكن أن تؤدي الامتيازات أكثر من اللازم إلى اختراق البيانات من خلال السماح لبعض المستخدمين بالوصول إلى البيانات التي لا ينبغي أن يكون لديهم في المقام الأول.

لمعرفة المزيد حول Azure RBAC، راجع:

استخدام التشفير من جانب العميل للبيانات عالية القيمة

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

يمكنك التشفير من جانب العميل أيضًا من التحكم بشكل منفرد في مفاتيح التشفير الخاصة بك. يمكنك إنشاء مفاتيح التشفير وإدارتها. يستخدم تقنية مغلف حيث تقوم مكتبة عميل تخزين Azure بإنشاء مفتاح تشفير محتوى (CEK) يتم تغليفه (تشفيره) بعد ذلك باستخدام مفتاح تشفير المفتاح (KEK). يتم تعريف KEK بواسطة معرّف مفتاح ويمكن أن يكون مفتاح مزدوج غير متماثل أو مفتاح متماثل ويمكن إدارته محليًا أو تخزينه في Azure Key Vault.

يتم تضمين التشفير من جانب العميل في مكتبات عميل تخزين Java و.NET. راجع التشفير من جانب العميل وAzure Key Vault لـ Microsoft Azure Storage للحصول على معلومات حول تشفير البيانات داخل تطبيقات العميل وإنشاء مفاتيح التشفير الخاصة بك وإدارتها.

تمكين تشفير خدمة التخزين للبيانات الثابتة

عند تمكين تشفير خدمة التخزين لتخزين الملفات، يتم تشفير البيانات تلقائيًا باستخدام تشفير AES-256. تعالج Microsoft جميع عمليات التشفير وفك التشفير وإدارة المفاتيح. تتوفر هذه الميزة لنوعي التكرار LRS وGRS.

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

قدمت لك هذه المقالة مجموعة من أفضل ممارسات أمان Azure Storage لتأمين تطبيقات الويب والجوال لـ PaaS. لمعرفة المزيد حول تأمين عمليات توزيع PaaS، راجع: