أفكار الحل
تصف هذه المقالة فكرة الحل. يمكن لمهندس السحابة الخاص بك استخدام هذه الإرشادات للمساعدة في تصور المكونات الرئيسية لتنفيذ نموذجي لهذه البنية. استخدم هذه المقالة كنقطة بداية لتصميم حل جيد التصميم يتوافق مع المتطلبات المحددة لحمل العمل الخاص بك.
يوضح هذا الحل كيفية دمج Azure Kubernetes Service (AKS) وAzure API Management عبر TLS (mTLS) المتبادل في بنية توفر تشفيرا من طرف إلى طرف.
المفاهيم
تسمح إدارة واجهة برمجة تطبيقات Azure بالوصول الآمن إلى الخدمات الخلفية من خلال آليات متعددة. في طبقة النقل (الشبكة)، يمكن لإدارة واجهة برمجة تطبيقات Azure تقديم شهادات العميل إلى الخلفية ويمكنها التحقق بالإضافة إلى ذلك من الشهادة التي يقدمها الخادم الخلفي. في سيناريو مصادقة TLS المتبادلة هذا، تحدث الخطوات التالية:
- تتصل إدارة واجهة برمجة تطبيقات Azure بالخادم الخلفي (في هذا السيناريو، بوحدة تحكم الدخول التي تعمل في AKS).
- يقدم الخادم الخلفي (وحدة تحكم الدخول في AKS) شهادة الخادم.
- تتحقق إدارة واجهة برمجة تطبيقات Azure من صحة شهادة الخادم.
- تقدم إدارة واجهة برمجة تطبيقات Azure شهادة العميل إلى الخادم (وحدة تحكم الدخول في AKS).
- يتحقق الخادم (وحدة تحكم الدخول في AKS) من صحة الشهادة التي تقدمها Azure API Management.
- يمنح الخادم (وحدة تحكم الدخول في AKS) الوصول إلى الطلب الذي يتم نقله من خلال إدارة واجهة برمجة تطبيقات Azure.
بناء الأنظمة
قم بتنزيل ملف Visio لهذه البنية.
تدفق البيانات
- يقدم المستخدم طلبا إلى نقطة نهاية التطبيق من الإنترنت.
- تتلقى بوابة تطبيق Azure نسبة استخدام الشبكة ك HTTPS وتقدم شهادة عامة تم تحميلها مسبقا من Azure Key Vault للمستخدم.
- تستخدم بوابة التطبيق مفاتيح خاصة لفك تشفير نسبة استخدام الشبكة (إلغاء تحميل SSL)، وإجراء عمليات فحص جدار حماية تطبيق الويب، وإعادة تشفير نسبة استخدام الشبكة باستخدام المفاتيح العامة (التشفير من طرف إلى طرف).
- تطبق بوابة التطبيق القواعد وإعدادات الواجهة الخلفية استنادا إلى تجمع الواجهة الخلفية وترسل نسبة استخدام الشبكة إلى تجمع الواجهة الخلفية APIM عبر HTTPS.
- يتم نشر APIM في وضع الشبكة الظاهرية الداخلية (المطور أو المستوى المتميز فقط) بعنوان IP خاص. يتلقى حركة المرور ك HTTPS مع شهادات PFX الخاصة بالمجال المخصص.
- يوفر معرف Microsoft Entra المصادقة ويطبق نهج إدارة واجهة برمجة التطبيقات عبر OAuth والتحقق من صحة شهادة العميل اختياريا. يرجى الاطلاع على الخطوات لتلقي شهادات العميل والتحقق منها في Azure API Management.
- ترسل إدارة واجهة برمجة التطبيقات نسبة استخدام الشبكة عبر HTTPS إلى وحدة تحكم دخول لمجموعة AKS الخاصة، باستخدام شهادة العميل الموثوق بها من قبل وحدة تحكم دخول AKS.
- تتلقى وحدة تحكم دخول AKS حركة مرور HTTPS وتتحقق من شهادة العميل التي تقدمها إدارة واجهة برمجة تطبيقات Azure. تدعم معظم وحدات التحكم في الدخول على مستوى المؤسسة mTLS. تستجيب وحدة تحكم دخول AKS لإدارة واجهة برمجة تطبيقات Azure باستخدام شهادة خادم SSL، والتي يتم التحقق من صحتها بواسطة إدارة واجهة برمجة التطبيقات.
- تعالج وحدة تحكم الدخول أسرار TLS (أسرار Kubernetes) باستخدام cert.pem وkey.pem. تفك وحدة تحكم الدخول تشفير نسبة استخدام الشبكة باستخدام مفتاح خاص (تم إلغاء تحميله). لإدارة البيانات السرية الأمنية المحسنة التي تستند إلى المتطلبات، يتوفر تكامل برنامج تشغيل CSI مع AKS.
- تعيد وحدة التحكم في الدخول تشفير نسبة استخدام الشبكة باستخدام مفاتيح خاصة وترسل حركة المرور عبر HTTPS إلى جرابات AKS. اعتمادا على متطلباتك، يمكنك تكوين دخول AKS كخلفية HTTPS أو تمرير.
المكونات
- بوابة التطبيق. بوابة التطبيق هي موازن تحميل حركة مرور الويب التي يمكنك استخدامها لإدارة نسبة استخدام الشبكة إلى تطبيقات الويب. في هذا السيناريو، Azure Application Gateway هي Waf الطبقة 7 التي تنفذ إنهاء SSL وفحص المحتوى.
- AKS. توفر AKS مجموعات Kubernetes المدارة بالكامل لنشر التطبيقات المعبأة في حاويات وتوسيع نطاقها وإدارتها. في هذا السيناريو، يتم نشر منطق الخلفية / الخدمات المصغرة في AKS.
- Azure Container Registry. Container Registry هي خدمة تسجيل Docker خاصة مدارة على Azure. يمكنك استخدام Container Registry لتخزين صور الحاوية الخاصة، والتي يتم نشرها في نظام المجموعة.
- معرف Microsoft Entra. في هذا السيناريو، يمكن أن تحتوي طلبات العميل على رمز OAuth 2.0 المميز، والذي سيتم تخويله من قبل إدارة واجهة برمجة تطبيقات Azure مقابل معرف Microsoft Entra باستخدام نهج التحقق من صحة الرمز المميز ل Microsoft Entra.
- الهويات المُدارة. توفر الهويات المدارة هوية مدارة تلقائيا في معرف Microsoft Entra للتطبيقات لاستخدامها عند الاتصال بالموارد التي تدعم مصادقة Microsoft Entra. في هذا السيناريو، يمكن استخدام الهوية المدارة ل AKS للمصادقة على أنظمة الواجهة الخلفية مثل قاعدة بيانات Azure SQL وAzure Cosmos DB.
- Azure SQL Database. قاعدة بيانات SQL هي خدمة قاعدة بيانات ارتباطية مدارة بالكامل وذكية تم إنشاؤها للسحابة. يمكنك استخدام قاعدة بيانات SQL لإنشاء طبقة تخزين بيانات عالية التوفر وعالية الأداء لتطبيقات السحابة الحديثة. في هذا السيناريو، يتم استخدام قاعدة بيانات Azure SQL كطبقة استمرار البيانات للبيانات المنظمة.
- قاعدة بيانات Azure Cosmos. Azure Cosmos DB هي خدمة قاعدة بيانات NoSQL مدارة بالكامل ومتعددة النماذج من أجل إنشاء وتحديث تطبيقات قابلة للتطوير وعالية الأداء. في هذا السيناريو، يتم استخدام Azure Cosmos DB كطبقة استمرار البيانات للبيانات شبه المنظمة.
- إدارة واجهة برمجة التطبيقات. يمكنك استخدام Azure API Management لنشر واجهات برمجة التطبيقات للمطورين والشركاء والموظفين. في هذا السيناريو، يتم استخدام إدارة واجهة برمجة تطبيقات Azure لتوفير وصول آمن ومدار إلى الخدمات المصغرة ومنطق العمل المستضاف في AKS.
- Azure Private Link. يوفر Private Link الوصول إلى خدمات PaaS المستضافة على Azure، حتى تتمكن من الاحتفاظ ببياناتك على شبكة Microsoft. في هذا السيناريو، يكون اتصال الشبكة من AKS إلى قاعدة بيانات Azure SQL وAzure Cosmos DB وAzure Container Registry من خلال ارتباطات خاصة.
- Key Vault. يمكن أن يوفر Key Vault أمانا محسنا للمفاتيح والأسرار الأخرى. في هذا السيناريو، يتم تخزين شهادات TLS في Azure Key Vault.
- Defender for Cloud. Defender for Cloud هو حل لإدارة وضع أمان السحابة وحماية حمل العمل السحابي. فهو يجد نقاطا ضعيفة عبر تكوين السحابة الخاص بك، ويساعد على تعزيز أمان بيئتك، ويمكنه حماية أحمال العمل عبر البيئات متعددة السحابات والمختلطة من التهديدات المتطورة. في هذا السيناريو، يتم فحص صور الحاوية المنشورة في Azure Container Registry وAzure Kubernetes Service بواسطة Microsoft Defender بحثا عن حاويات.
- Azure Monitor. يمكنك استخدام Monitor لجمع بيانات القياس عن بعد وتحليلها والعمل عليها من بيئات Azure والبيئات المحلية. تساعدك شاشة العرض على زيادة أداء وتوافر تطبيقاتك إلى أقصى حد وتحديد المشاكل بشكل استباقي.
- Log Analytics. يمكنك استخدام Log Analytics لتحرير استعلامات السجل وتشغيلها باستخدام البيانات في سجلات Azure Monitor. في هذا السيناريو، يمكن إرسال سجلات التشخيص من Azure Application Gateway وAKS وإدارة واجهة برمجة التطبيقات وقاعدة بيانات Azure SQL وAzure Cosmos DB وما إلى ذلك إلى مساحة عمل تحليلات السجل بحيث يمكن تحليل السجلات استنادا إلى المتطلبات.
- Application Insights. Application Insights هو امتداد ل Azure Monitor. يوفر مراقبة أداء التطبيق. يمكن دمج إدارة Azure API والحاويات في Azure Kubernetes Service مع Application insights، بحيث يمكن الحصول على تتبعات مستوى التطبيق وتحليلها.
- Microsoft Sentinel. Microsoft Sentinel هو نظام أساسي لمعلومات الأمان وإدارة الأحداث الأصلية على السحابة يستخدم الذكاء الاصطناعي المضمنة لمساعدتك في تحليل كميات كبيرة من البيانات. في هذا السيناريو، يتم استخدام Microsoft Sentinel كحل SIEM لتحسين أمان الحل.
- Azure Bastion. Azure Bastion هي خدمة مدارة بالكامل توفر وصول RDP وSSH إلى الأجهزة الظاهرية دون أي تعرض من خلال عناوين IP العامة. يمكنك توفير الخدمة مباشرة في شبكتك الظاهرية المحلية أو النظيرة للحصول على دعم لجميع الأجهزة الظاهرية في تلك الشبكة. في هذا السيناريو، يتم الوصول إلى موارد الشبكة الخاصة من خلال خوادم الانتقال السريع عبر Azure Bastion.
- Azure Private DNS. يمكنك استخدام DNS الخاص لإدارة أسماء المجالات وحلها في شبكة ظاهرية دون إضافة حل DNS مخصص. في هذا السيناريو، يتم استخدام مناطق DNS الخاصة لتحليل الاسم لإدارة واجهة برمجة التطبيقات وAzure Cosmos DB وقاعدة بيانات Azure SQL وسجل حاويات Azure.
تفاصيل السيناريو
يمكنك استخدام هذا الحل لدمج AKS وAPI Management عبر mTLS في بنية توفر تشفيرا من طرف إلى طرف.
حالات الاستخدام المحتملة
- تكامل AKS مع APIM وApplication Gateway، عبر mTLS.
- mTLS من طرف إلى طرف بين APIM وAKS.
- عمليات نشر أمان عالية للمؤسسات التي تحتاج إلى TLS من طرف إلى طرف. على سبيل المثال، يمكن للمؤسسات في القطاع المالي الاستفادة من هذا الحل.
يمكنك استخدام هذا الأسلوب لإدارة السيناريوهات التالية:
- نشر APIM في الوضع الداخلي وكشف واجهات برمجة التطبيقات باستخدام بوابة التطبيق.
- تكوين mTLS والتشفير الشامل للأمان العالي وحركة المرور عبر HTTPS.
- الاتصال بخدمات Azure PaaS باستخدام نقطة نهاية خاصة أمان محسنة.
- تنفيذ أمان Defender for Containers.
تكوين TLS المتبادل
يرجى الاطلاع على خدمات الواجهة الخلفية الآمنة باستخدام مصادقة شهادة العميل في Azure API Management للحصول على إرشادات حول كيفية تكوين الشهادات الخلفية على إدارة واجهة برمجة تطبيقات Azure.
ستحتاج إلى تكوين mTLS في وحدة تحكم دخول AKS المدارة أيضا. يمكن استيراد شهادة الخادم التي تقدمها AKS إلى APIM إما مباشرة كسر Kubernetes أو يمكن الوصول إليها عبر سر Key Vault. راجع المقالة إعداد اسم مجال مخصص وشهادة SSL باستخدام الوظيفة الإضافية لتوجيه التطبيق للحصول على تفاصيل حول تكوين شهادة الخادم في وحدة تحكم الدخول المدارة من AKS. يمكنك إجراء مصادقة شهادة العميل في وحدة تحكم الدخول للتحقق من صحة الشهادة المقدمة من APIM. ستحتاج إلى توفير شهادة المرجع المصدق إلى نظام مجموعة AKS للتحقق من شهادة العميل المقدمة من APIM. قد تحتاج التعليقات التوضيحية إلى تكوين في وحدة تحكم الدخول لفرض التحقق من صحة شهادة العميل باستخدام شهادة المرجع المصدق. لمزيد من التفاصيل، يرجى الاطلاع على خطوات مصادقة شهادة العميل ونموذج ملف YAML للدخول مع التعليقات التوضيحية.
المساهمون
تحتفظ Microsoft بهذه المقالة. وهي مكتوبة في الأصل من قبل المساهمين التاليين.
الكاتب الرئيسي:
- ساسوات موهانتي | مهندس حلول سحابي أول
مساهمون آخرون:
- مايكل ألبرتس | كاتب تقني
- أرشد أزيم | مهندس أول للحلول السحابية
- راج بينشلا | مهندس حلول السحابة الأساسي
لمشاهدة ملفات تعريف LinkedIn غير العامة، سجل الدخول إلى LinkedIn.
الخطوات التالية
- بوابة التطبيق
- مخطط AKS
- وثائق AKS
- مسار تعلم AKS
- مسار التعلم لإدارة واجهة برمجة التطبيقات
- مسرع المنطقة المنتقل إليها لإدارة واجهة برمجة التطبيقات
- مدونة Microsoft Defender for Cloud