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

أنت تعرض مستندات Apigee Edge.
انتقل إلى مستندات Apigee X.
معلومات

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

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

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

يُرجى الاطّلاع على مقالة لمحة عن خدمات الاستضافة الافتراضية للحصول على مزيد من المعلومات.

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

أثناء طلب خادم وكيل لواجهة برمجة التطبيقات من خلال مضيف افتراضي يدعم بروتوكول أمان طبقة النقل (TLS)، يمكن لـ Edge التقاط معلومات حول اتصال بروتوكول أمان طبقة النقل (TLS). ويمكن عندئذٍ للخادم الوكيل لواجهة برمجة التطبيقات الوصول إلى تلك المعلومات من خلال متغيرات التدفق لإجراء تحليل إضافي والتحقق من الصحة.

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

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

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

يسرد الجدول التالي متغيّرات التدفق التي تحتوي على معلومات اتصال بروتوكول أمان طبقة النقل (TLS) التي تم تسجيلها بواسطة Edge وتتوفّر إمكانية الوصول إليها في الخادم الوكيل لواجهة برمجة التطبيقات. يتم تسجيل هذه المعلومات للاتجاهين أحادي الاتجاه وبروتوكول أمان طبقة النقل (TLS) الثنائي الاتجاه عن طريق ضبط <ConnectionProperties> على "صحيح" في تعريف المضيف الظاهري:

متغيّر التدفق الوصف
tls.cipher يشير هذا المصطلح إلى الرمز المستخدَم في اتصال بروتوكول أمان طبقة النقل (TLS).
tls.protocol البروتوكول الذي يستخدمه اتصال بروتوكول أمان طبقة النقل (TLS).
tls.server.name اسم خادم SNI المطلوب.
tls.session.id

معرِّف الجلسة.

يتوفّر متغيّر التدفق هذا عند ضبط إحدى القيمتَين <ConnectionProperties> أو <ClientProperties> أو إلى true.

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

يسرد الجدول التالي متغيرات التدفق التي تحتوي على تفاصيل شهادة العميل التي تم التقاطها بواسطة Edge في بروتوكول أمان طبقة النقل (TLS) ثنائي الاتجاه. يتم الحصول على هذه المعلومات لاستخدام بروتوكول أمان طبقة النقل (TLS) ثنائي الاتجاه من خلال الإعداد <ClientProperties> إلى true في تعريف المضيف الظاهري:

متغيّر التدفق الوصف
tls.client.s.dn تمثّل هذه السمة الاسم المميز (DN) لشهادة العميل.
tls.client.i.dn الاسم المميز (DN) لجهة إصدار شهادة العميل
tls.client.raw.cert شهادة العميل بتنسيق PEM
tls.client.cert.serial الرقم التسلسلي لشهادة العميل
tls.client.cert.fingerprint الملف المرجعي SHA1 لشهادة العميل
tls.session.id

معرِّف الجلسة.

يتوفر متغير التدفق هذا عند تعيين أي <ConnectionProperties> أو <ClientProperties> على "صحيح".

إعداد مضيف افتراضي لالتقاط معلومات بروتوكول أمان طبقة النقل (TLS)

لإعداد المضيف الافتراضي لالتقاط معلومات بروتوكول أمان طبقة النقل (TLS)، عليك ضبط الخصائص التالية أقل من <PropagateTLSInformation> إلى true.

  • <ConnectionProperties>: تفعيل التقاط معلومات اتصال بروتوكول أمان طبقة النقل (TLS) لكل من بروتوكول أمان طبقة النقل (TLS) الأحادي الاتجاه والثنائي الاتجاه. القيمة التلقائية هي false.
  • <ClientProperties>: تفعيل تسجيل المعلومات الإضافية لبروتوكول أمان طبقة النقل (TLS) ثنائي الاتجاه. القيمة التلقائية هي false.

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

<VirtualHost name="secure">
    ....
    <SSLInfo>
        <Enabled>true</Enabled>
        # Enable two-way TLS.
        <ClientAuthEnabled>true</ClientAuthEnabled>
        <IgnoreValidationErrors>false</IgnoreValidationErrors>
        <KeyAlias>ks-alias</KeyAlias>
        <KeyStore>ref://ks-ref</KeyStore>
        <TrustStore>ref://ts-ref</TrustStore>
    </SSLInfo>
    <PropagateTLSInformation>
        <ConnectionProperties>true</ConnectionProperties>
        <ClientProperties>true</ClientProperties>
    </PropagateTLSInformation>
</VirtualHost>

في حال تمرير نص JSON، اضبط الخصائص على النحو التالي:

  "propagateTLSInformation" : {
    "connectionProperties" : true,
    "clientProperties" : true
  }

ضبط حدود حجم العنوان

عند تفعيل التقاط معلومات بروتوكول أمان طبقة النقل (TLS) على مضيف افتراضي، يمرِّر Edge هذه المعلومات باستخدام عناوين HTTP. وبالتالي، عليك التأكّد من ضبط حدود حجم العنوان بشكل مناسب. بناءً على ما إذا كنت تستخدم Edge for Cloud أو Edge for Cloud Private Cloud:

  • Edge for the Cloud: يضبط Apigee أحجام العناوين بشكلٍ مناسب.
  • حافة السحابة الإلكترونية الخاصة: الميزة غير متاحة.

الوصول إلى متغيرات التدفق في خادم وكيل لواجهة برمجة التطبيقات

من داخل الخادم الوكيل لواجهة برمجة التطبيقات، يمكنك الوصول إلى متغيّرات تدفق بروتوكول أمان طبقة النقل وفحصها. على سبيل المثال، يمكنك استخدام AssignMessage. الوصول إليها، والوصول إليها في JavaScript من خلال سياسة JavaScript.

يمكنك أيضًا الرجوع إلى متغيّرات التدفق في عنصر <Condition> في الخادم الوكيل أو التدفق الهدف، أو في <Step> أو <RouteRule>. على سبيل المثال، يمكنك توجيه طلب أهداف مختلفة استنادًا إلى الرقم التعريفي للعميل.

لمزيد من المعلومات، يُرجى الاطّلاع على: