تهيئة الإصدار 1.3 من بروتوكول أمان طبقة النقل (TLS) لحركة المرور المتجهة جنوبًا

توضّح هذه الصفحة كيفية ضبط بروتوكول أمان طبقة النقل (TLS) 1.3 في معالِجات الرسائل في Apigee للزيارات الواردة في اتجاه الجنوب. (الزيارات بين معالج الرسائل وخادم الخلفية).

للتعرّف على مزيد من المعلومات حول ميزة TLS 1.3 في Java، يمكنك الاطّلاع على ملاحظات إصدار تحديث JDK 8u261:

يعتمد إجراء تفعيل TLS 1.3 على إصدار Java الذي تستخدمه. عرض تحقَّق من إصدار Java في معالج الرسائل أدناه للعثور على إصدار Java المثبَّت في معالج الرسائل.

إصدارات TLS v1.3 وJava

تم تقديم ميزة TLS 1.3 في الإصدارات التالية من Java:

  • Oracle JDK 8u261
  • برنامج OpenJDK 8u272

تتوفّر ميزة TLS v1.3 في إصدارات Java التالية، ولكن لا يتم تفعيلها تلقائيًا في أدوار العملاء:

  • Oracle JDK 8u261 أو أحدث ولكن أقل من Oracle JDK 8u341
  • OpenJDK 8u272 أو إصدار أحدث ولكن أقل من OpenJDK 8u352

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

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

  • Oracle JDK 8u341 أو إصدار أحدث
  • OpenJDK 8u352 أو إصدار أحدث

لكي يعمل الإصدار 1.3 من بروتوكول أمان طبقة النقل (TLS)، يجب استيفاء جميع الشروط التالية:

  • يجب أن تتوافق لغة Java المضمّنة في معالج الرسائل مع بروتوكول أمان طبقة النقل (TLS) الإصدار 1.3.
  • يجب تفعيل الإصدار 1.3 من بروتوكول أمان طبقة النقل (TLS) في Java في معالج الرسائل.
  • يجب تفعيل الإصدار 1.3 من بروتوكول أمان طبقة النقل (TLS) في تطبيق "معالج الرسائل".

كيفية تفعيل الإصدار 1.3 من بروتوكول أمان طبقة النقل (TLS) في Java إذا لم يكن مفعّلاً بشكل تلقائي

يوضح هذا القسم كيفية تمكين الإصدار 1.3 من بروتوكول أمان طبقة النقل (TLS) إذا كنت تستخدم أيًا مما يلي: لإصدارات Java:

  • Oracle JDK 8u261 أو أحدث ولكن أقل من Oracle JDK 8u341
  • OpenJDK 8u272 أو إصدار أحدث ولكن أقل من OpenJDK 8u352

في معالج الرسائل، اضبط خاصية Java على jdk.tls.client.protocols. يتم فصل القيم بفواصل، ويمكن أن تحتوي على واحد أو أكثر من TLSv1 وTLSv1.1 وTLSv1.2 وTLSv1.3 و SSLv3

على سبيل المثال، يؤدي إعداد -Djdk.tls.client.protocols=TLSv1.2,TLSv1.3 إلى تفعيل البرنامج. البروتوكولين TLSv1.2 وTLSv1.3.

راجع تغيير مصادر أخرى خصائص آلة متجه الدعم ستتعلم كيفية تعيين خصائص JVM في مكون Edge.

لتفعيل بروتوكولات طبقة النقل الآمنة (TLS) الإصدارات 1 و1.1 و1.2 و1.3، يمكنك اتّباع الخطوات التالية:

  1. ضبط الإعدادات التالية في ملف إعداد معالج الرسائل (/opt/apigee/customer/application/message-processor.properties):
       bin_setenv_ext_jvm_opts=-Djdk.tls.client.protocols=TLSv1,TLSv1.1,TLSv1.2,TLSv1.3
  2. أعِد تشغيل معالج الرسائل.
>

طريقة إيقاف الإصدار 1.3 من بروتوكول أمان طبقة النقل (TLS) عند تفعيله تلقائيًا

إذا كنت تستخدم Oracle JDK 8u341 أو إصدارًا أحدث، أو OpenJDK 8u352 أو إصدارًا أحدث، يتم تفعيل TLSv1.3 من خلال كخيار افتراضي للعملاء. إذا أردت إيقاف الإصدار 1.3 من بروتوكول أمان طبقة النقل (TLS) في مثل هذه الحالات، لديك خياران:

التحقق من إصدار Java في معالج الرسائل

للتحقق من إصدار Java المثبت في معالج الرسائل، سجّل الدخول إلى معالج الرسائل العقدة وتنفيذ الأمر التالي:

java -version

يوضح النتيجة النموذجية أدناه أنه تم تثبيت OpenJDK 8u312.

$ java -version
openjdk version "1.8.0_312"
OpenJDK Runtime Environment (build 1.8.0_312-b07)
OpenJDK 64-Bit Server VM (build 25.312-b07, mixed mode)

الرموز المتوافقة

في الوقت الحالي، تتيح Java 8 استخدام تشفير 2 TLS من الإصدار 1.3:

  • TLS_AES_256_GCM_SHA384
  • TLS_AES_128_GCM_SHA256

يمكنك استخدام openssl للتحقق مما إذا كان خادمك المستهدف متوافقًا مع الإصدار 1.3 من بروتوكول أمان طبقة النقل (TLS) وأحد التشفير أعلاه باستخدام أدناه. لاحظ أن هذا المثال يستخدم الأداة المساعدة openssl11 التي لها تم تفعيل الإصدار 1.3 من بروتوكول أمان طبقة النقل (TLS).

$ openssl11 s_client -ciphersuites "TLS_AES_256_GCM_SHA384:TLS_AES_128_GCM_SHA256" -connect target_host:target_port -tls1_3