لمحة عن بروتوكول أمان طبقة النقل/طبقة المقابس الآمنة

أنت الآن بصدد الاطّلاع على مستندات Apigee Edge.
انتقِل إلى مستندات Apigee X.
info

بروتوكول أمان طبقة النقل (TLS)، الذي سبقه بروتوكول طبقة المقابس الآمنة (SSL)، هو تكنولوجيا الأمان المعتمَدة لإنشاء رابط مشفّر بين خادم ويب وعميل ويب، مثل متصفّح أو تطبيق. ويضمن الرابط المشفّر بقاء جميع البيانات التي يتم تبادلها بين الخادم والعميل خاصة. لاستخدام بروتوكول أمان طبقة النقل (TLS)، يرسل العميل طلبًا آمنًا إلى الخادم باستخدام بروتوكول HTTPS المشفّر بدلاً من بروتوكول HTTP غير المشفّر.

يتوافق Edge مع بروتوكول أمان طبقة النقل (TLS) أحادي الاتجاه وثنائي الاتجاه في كل من عمليات النشر على السحابة الإلكترونية وعمليات النشر المحلية (للاطّلاع على إصدارات بروتوكول أمان طبقة النقل المتوافقة، يُرجى الرجوع إلى البرامج والإصدارات المتوافقة). يتيح بروتوكول أمان طبقة النقل (TLS) أحادي الاتجاه لعميل بروتوكول أمان طبقة النقل (TLS) التحقّق من هوية خادم بروتوكول أمان طبقة النقل (TLS). على سبيل المثال، يمكن لتطبيق يعمل على هاتف Android (العميل) التحقّق من هوية واجهات برمجة التطبيقات Edge (الخادم).

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

مصطلحات بروتوكول أمان طبقة النقل (TLS)

يجب أن تكون على دراية بالمصطلحات والمفاهيم المهمة التالية قبل ضبط TLS:

المصطلح

التعريف

CA

مرجع التصديق هي جهة موثوق بها، مثل Symantec أو VeriSign، تُستخدَم لإصدار الشهادات والتحقّق من صحتها. هناك نوع من الشهادات يُعرف باسم شهادة موقَّعة ذاتيًا، ولا يتطلّب هذا النوع هيئة إصدار شهادات.

سلسلة الشهادات

في كثير من الأحيان، لن تكون لديك شهادة موقَّعة باستخدام المفتاح الخاص الجذر لهيئة إصدار الشهادات. بدلاً من ذلك، لديك شهادتك مع شهادة وسيطة واحدة أو أكثر تشكّل سلسلة. عادةً ما يتم توقيع آخر شهادة وسيطة في السلسلة باستخدام المفتاح الخاص الجذر الخاص بمرجع التصديق.

CSR

طلب توقيع الشهادة طلب توقيع الشهادة هو ملف يتم إنشاؤه على خادم TLS استنادًا إلى المفتاح الخاص. يحتوي طلب شهادة توقيع CSR على المفتاح العام ومعلومات أخرى، مثل اسم المؤسسة وموقعها الجغرافي واسم النطاق. توقّع هيئة إصدار الشهادات على طلب توقيع الشهادة لإنشاء شهادة بروتوكول أمان طبقة النقل. يتم عادةً إنشاء طلب توقيع شهادة (CSR) عندما تكون لديك شهادة منتهية الصلاحية وتريد تجديدها.

DER

Distinguished Encoding Rules تنسيق DER هو شكل ثنائي للشهادة بدلاً من تنسيق PEM المستند إلى ASCII. ويكون امتداد الملف أحيانًا ‎ .der، ولكن غالبًا ما يكون ‎ .cer. الطريقة الوحيدة للتمييز بين ملف DER .cer وملف PEM .cer هي فتح الملف في محرّر نصوص والبحث عن عبارتَي BEGIN وEND. يمكن ترميز جميع أنواع الشهادات والمفاتيح الخاصة بتنسيق DER. يتم استخدام DER عادةً مع منصات Java.

اسم المفتاح

يحدّد الاسم المستعار للمفتاح بشكل فريد إدخال مخزن المفاتيح (شهادة TLS والمفتاح الخاص المقابل) في مخزن المفاتيح.

يُشار إلى KeyAlias في Apigee Edge باسم alias عند تحميل الشهادة أو المفتاح إلى مخازن المفاتيح باستخدام واجهة المستخدم أو واجهة برمجة التطبيقات.

Keystore

مخزن المفاتيح هو مستودع يحتوي على شهادة واحدة أو أكثر من شهادات بروتوكول أمان طبقة النقل (TLS) ومفتاح خاص مطابق يُستخدَم لتحديد الهوية أثناء عملية تبادل بيانات بروتوكول أمان طبقة النقل (TLS) بين العميل والخادم.

في عملية الاتصال الصادرة، يعمل جهاز التوجيه كخادم ويتم تخزين شهادته في مخزن المفاتيح في Apigee Edge.

في اتصال المرور إلى أسفل، يعمل معالج الرسائل كعميل ويعمل خادم الخلفية كخادم. يتم تخزين شهادة العميل ومفتاحها الخاص في ملف تخزين المفاتيح في Apigee Edge.

P7B

يتم عادةً تخزين تنسيق PKCS #7 أو P7B بتنسيق Base64 ASCII ويكون له امتداد ملف ‎ .p7b أو ‎ .p7c. تحتوي شهادات P7B على عبارات -----BEGIN PKCS7----- و-----END PKCS7-----. يحتوي ملف P7B على شهادات وسلاسل شهادات فقط، وليس على المفتاح الخاص.

PEM

تنسيق البريد مُحسَّن الخصوصية (PEM) هو تنسيق ASCII مستند إلى نص، وهو ترميز Base64 لتنسيق قواعد الترميز المميزة (DER) الثنائي. يمكن فتح شهادات PEM في أي محرّر نصوص، ويتم تحديد محتوى الشهادة الفعلي بين عبارتَي -----BEGIN CERTIFICATE----- و-----END CERTIFICATE-----.

يتوافق مع تنسيق X.509 لتخزين شهادة أو سلسلة شهادات أو مفتاح خاص. إذا لم يتم تحديد الشهادة أو المفتاح الخاص من خلال ملف PEM، يمكنك تحويلهما إلى ملف PEM باستخدام أدوات مثل OpenSSL.

PKCS #12/PFX تنسيق PKCS ‎ #12 أو PFX هو تنسيق ثنائي لتخزين شهادة الخادم وأي شهادات وسيطة والمفتاح الخاص في ملف واحد قابل للتشفير. تحتوي ملفات PFX عادةً على امتدادات مثل ‎ .pfx و‎ .p12. تُستخدَم ملفات PFX عادةً على أجهزة Windows لاستيراد الشهادات والمفاتيح الخاصة وتصديرها.

المفتاح الخاص

يُستخدَم على خادم TLS لفك تشفير البيانات. يملك خادم TLS المفتاح الخاص فقط، ولا تتم مشاركته مع برامج TLS.

المفتاح العام

تُستخدَم لتشفير البيانات المُرسَلة من عميل TLS إلى خادم TLS. يتم تضمين المفتاح العام في الشهادة. تحتوي جميع برامج TLS على نسخة من المفتاح العام للخادم.

المراجع توفّر المراجع مستوى من عدم المباشرة لمخازن المفاتيح، وبالتالي لا تتطلّب تغييرات مخزن المفاتيح تعديل المضيف الافتراضي طالما تم الحفاظ على المرجع واسم المفتاح المستعار نفسهما. يتيح لك ذلك إجراء هذه التغييرات بنفسك وتقليل الاعتماد على فريق دعم Apigee.

شهادة موقَّعة ذاتيًا

شهادة لم توقِّع عليها هيئة إصدار شهادات موثوق بها ويكون كل من الجهة المصدرة والجهة المعنية متطابقَين، ويتم توقيعهما باستخدام المفتاح الخاص المطابق للمفتاح العام الذي يحتويان عليه.

SNI

الإشارة إلى اسم الخادم تتيح عرض عدة أهداف HTTPS من عنوان IP ومنفذ واحد بدون الحاجة إلى أن تستخدم هذه الأهداف الشهادة نفسها.

شهادة بروتوكول أمان طبقة النقل (TLS)

ملف رقمي يحدّد كيانًا في معاملة TLS يمكن استخدام الشهادة، أو cert، لتحديد خادم TLS وعميل TLS، وذلك حسب إعدادات TLS.

Truststore

تحتوي على شهادات موثوق بها على عميل TLS تُستخدَم للتحقّق من صحة شهادة خادم TLS المقدَّمة إلى العميل. وعادةً ما تكون هذه الشهادات موقعة ذاتيًا أو غير موقعة من هيئة إصدار شهادات موثوق بها.

في اتصال الشمال، يتم تخزين شهادات تطبيق العميل في truststore في Apigee Edge. هذه السمة مطلوبة فقط إذا كنت قد أعددت بروتوكول أمان طبقة النقل (TLS) ثنائي الاتجاه بين العميل وApigee.

في اتصال المرور إلى الجنوب، يتم تخزين شهادات خادم الخلفية في truststore في Apigee Edge. هذا الإعداد مطلوب إذا أردت التحقّق من شهادة الخلفية في Apigee Edge في اتصال أحادي الاتجاه أو ثنائي الاتجاه باستخدام بروتوكول أمان طبقة النقل (TLS) بين Apigee Edge وخادم الخلفية.

لا يحتوي Apigee Edge على عنصر truststore منفصل. لذلك، يتم إنشاء ملفات truststore كعنصر keystore، ولكن تتم الإشارة إليها كملف truststore أينما تم استخدامها (على سبيل المثال، في المضيف الافتراضي ونقاط النهاية المستهدفة والخوادم المستهدفة وما إلى ذلك).

المضيف الافتراضي

يمثّل المضيف الافتراضي نقطة نهاية واجهة برمجة التطبيقات في Apigee لتطبيقات العميل. وهي عبارة عن كيان يساعد في استضافة أسماء نطاقات متعددة (مع معالجة منفصلة لكل اسم) على خادم واحد (أو مجموعة من الخوادم). يتيح ذلك لأحد الخوادم مشاركة موارده، مثل الذاكرة ودورات المعالج، بدون الحاجة إلى أن تستخدم جميع الخدمات المقدَّمة اسم المضيف نفسه.

يمكن للمضيف الافتراضي عرض زيارات HTTP أو HTTPS (المفعَّل باستخدام طبقة المقابس الآمنة).

يمكن ضبط المضيف الافتراضي المفعَّل فيه بروتوكول SSL في وضع TLS أحادي الاتجاه أو ثنائي الاتجاه. يتم ضبطها باستخدام ما يلي:

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

بروتوكول أمان طبقة النقل/طبقة المقابس الآمنة أحادي الاتجاه

يوضّح الشكل التالي عملية المصافحة بين بروتوكول أمان طبقة النقل (TLS) وطبقة المقابس الآمنة (SSL) لإجراء مصادقة أحادية الاتجاه بين عميل TLS وخادم TLS:

في إعدادات بروتوكول أمان طبقة النقل (TLS) أحادي الاتجاه، يكون تأكيد الاتصال على النحو التالي:

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

يوضّح الشكل التالي عملية المصافحة بين TLS وSSL باستخدام truststore اختياري على العميل:

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

في بروتوكول أمان طبقة النقل (TLS) أحادي الاتجاه، يمكن أن يكون Edge إما الخادم أو العميل على النحو التالي:

  • الخادم الطرفي كخادم TLS

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

  • متصفّح Edge كعميل بروتوكول أمان طبقة النقل (TLS)

    يعمل Edge كعميل يصل إلى خدمة خلفية. في هذه الحالة، تتوافق الخدمة الخلفية مع الخادم الذي يستضيف نقطة نهاية TLS. لذلك، يحتوي خادم الخلفية على ملف تخزين مفاتيح يتضمّن شهادته ومفتاحه الخاص.

بروتوكول أمان طبقة النقل (TLS) ثنائي الاتجاه

يوضّح الشكل التالي عملية المصافحة بين بروتوكول أمان طبقة النقل (TLS) وبروتوكول المقابس الآمنة (SSL) لإجراء مصادقة TLS ثنائية الاتجاه بين العميل والخادم:

في بروتوكول أمان طبقة النقل (TLS) ثنائي الاتجاه، تكون عملية تأكيد الاتصال على النحو التالي:

  • يحتوي كل من العميل والخادم على ملفات تخزين مفاتيح خاصة بهما. يحتوي مخزن مفاتيح العميل على شهادته ومفتاحه الخاص، ويحتوي مخزن مفاتيح الخادم على شهادته ومفتاحه الخاص.
  • يعرض خادم بروتوكول أمان طبقة النقل (TLS) شهادته على عميل بروتوكول أمان طبقة النقل (TLS) لمصادقة نفسه. بعد ذلك، يتحقّق العميل من هوية الخادم قبل إرسال شهادته إليه.
  • يعرض عميل TLS شهادته على خادم TLS لمصادقة نفسه على الخادم.

يوضّح الشكل التالي عملية تأكيد الاتصال من خلال بروتوكول أمان طبقة النقل (TLS) باستخدام truststore اختياري:

في هذا السيناريو، تتم المصافحة على النحو التالي:

  • إذا كان الخادم الذي يستخدم بروتوكول أمان طبقة النقل (TLS) يستعمل شهادة موقَّعة ذاتيًا أو شهادة غير موقَّعة من مرجع تصديق موثوق به، عليك إنشاء مخزن شهادات الجذر الموثوق بها على العميل. يحتوي العميل على نسخة من شهادة الخادم في مستودع الشهادات الموثوقة. أثناء عملية المصافحة باستخدام بروتوكول أمان طبقة النقل (TLS)، يقارن العميل الشهادة في مستودع الشهادات الموثوقة بالشهادة المُرسَلة من الخادم للتحقّق من هوية الخادم.
  • إذا كان برنامج TLS يستخدم شهادة موقَّعة ذاتيًا أو شهادة غير موقَّعة من مرجع تصديق موثوق به، عليك إنشاء مخزن شهادات الجذر الموثوق بها على الخادم.يحتوي الخادم على نسخة من شهادة العميل في مخزن شهادات الجذر الموثوق بها. أثناء عملية المصافحة باستخدام بروتوكول أمان طبقة النقل (TLS)، يقارن الخادم الشهادة في مستودع الشهادات الموثوقة بالشهادة التي أرسلها العميل للتحقّق من هوية العميل.

يمكن أن يستخدم العميل أو الخادم أو كلاهما ملف truststore.

في بروتوكول أمان طبقة النقل (TLS) الثنائي الاتجاه، يمكن أن يكون Edge إما الخادم أو العميل على النحو التالي:

  • استخدام Edge كخادم

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

  • الشبكة الطرفية بصفتها العميل

    يعمل Edge كعميل يصل إلى خدمة خلفية. في هذه الحالة، تتوافق الخدمة الخلفية مع الخادم الذي يستضيف نقطة نهاية TLS. وبالتالي، يحتوي خادم الخلفية على مخزن مفاتيح يتضمّن شهادته ومفتاحه الخاص.

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

الأمر المهم الذي يجب تذكُّره هو أنّ Edge مرن بما يكفي لدعم بروتوكول أمان طبقة النقل (TLS) الثنائي الاتجاه بغض النظر عن الطريقة التي تختارها لإعداده.

دعم SNI

يتيح Edge استخدام إشارة اسم الخادم (SNI) من خوادم وكيل API إلى Edge، حيث يعمل Edge كخادم TLS، ومن Edge إلى نقاط النهاية المستهدَفة، حيث يعمل Edge كعميل TLS، وذلك في كل من عمليات التثبيت على السحابة الإلكترونية والسحابة الإلكترونية الخاصة.

باستخدام SNI، وهي إضافة إلى TLS/SSL، يمكن عرض عدة أهداف HTTPS من عنوان IP ومنفذ واحدين بدون الحاجة إلى أن تستخدم هذه الأهداف الشهادة نفسها.

للحصول على معلومات حول تفعيل SNI لعملية تثبيت محلية، يُرجى الاطّلاع على استخدام SNI مع Edge.

المتّجهة شمالاً وجنوبًا

في Apigee، يشير مصطلح "المرور الصاعد" إلى نقطة نهاية واجهة برمجة التطبيقات التي تستخدمها تطبيقات العميل لتفعيل خادم وكيل لواجهة برمجة التطبيقات. عادةً ما يكون جهاز التوجيه نقطة الدخول في Apigee Edge، ويتعامل مع الطلبات الواردة إلى Apigee Edge. لذلك، في Apigee، يُشار إلى نقطة النهاية المستخدَمة للتواصل بين تطبيق العميل وApigee Edge (الموجّه) باسم المرور الصاعد.

في Apigee، يشير مصطلح "المرور جنوبًا" إلى نقطة النهاية المستهدَفة التي تستخدمها Apigee للتواصل مع خادم الخلفية. لذلك، في Apigee، يُشار إلى نقطة النهاية المستخدَمة للتواصل بين Apigee Edge (معالج الرسائل) وخادم الخلفية باسم المرور الصادر. معالج الرسائل هو أحد مكونات Apigee Edge التي تعمل كخادم وكيل لطلبات البيانات من واجهة برمجة التطبيقات إلى خوادم الاستهداف الخلفية.

يوضّح الشكل التالي الاتصالات المتجهة شمالاً وجنوبًا في Apigee Edge:

حركة المرور المتّجهة شمالاً وجنوبًا يكون اتجاه حركة البيانات من تطبيق العميل إلى جهاز التوجيه شماليًا. ثم إلى "معالج الرسائل". تكون حركة البيانات من "معالج الرسائل" إلى خادم الخلفية في اتجاه جنوبي.