إعداد apigee-sso للوصول إلى HTTPS

Edge for Private Cloud ‏v4.18.05

يصف مقالة تثبيت خدمة الدخول المُوحَّد (SSO) في Edge وضبطها كيفية تثبيت وحدة الدخول المُوحَّد في Edge وضبطها لاستخدام بروتوكول HTTP على المنفذ 9099، كما هو محدّد في السمة التالية في ملف الإعدادات:

SSO_TOMCAT_PROFILE=DEFAULT

بدلاً من ذلك، يمكنك ضبط SSO_TOMCAT_PROFILE على إحدى القيم التالية لتفعيل الوصول إلى HTTPS:

  • SSL_PROXY: لضبط apigee-sso في وضع الخادم الوكيل، ما يعني أنّه تم تثبيت جهاز موازنة حمل أمام apigee-sso وإنهاء بروتوكول أمان طبقة النقل (TLS) على جهاز موازنة الحمل. بعد ذلك، حدِّد المنفذ المستخدَم على apigee-sso للطلبات الواردة من جهاز موازنة الحمل.
  • SSL_TERMINATION: تم تفعيل إمكانية الوصول إلى بروتوكول النقل الآمن (TLS) لوحدة apigee-sso، وهي وحدة الدخول المُوحَّد في Edge، على المنفذ الذي تختاره. يجب تحديد متجر مفاتيح لهذا الوضع يحتوي على شهادة موقَّعة من قِبل هيئة إصدار الشهادات. لا يمكنك استخدام شهادة موقَّعة ذاتيًا.

يمكنك اختيار تفعيل بروتوكول HTTPS في وقت تثبيته وضبطه لأول مرة apigee-sso، أو يمكنك تفعيله لاحقًا.

يؤدي تفعيل الوصول إلى apigee-sso باستخدام بروتوكول HTTPS في أي من الوضعَين إلى إيقاف إمكانية الوصول باستخدام بروتوكول HTTP. وهذا يعني أنّه لا يمكنك الوصول إلى apigee-sso باستخدام كل من HTTP وHTTPS في الوقت نفسه.

تفعيل وضع SSL_PROXY

في وضع SSL_PROXY، يستخدم نظامك أداة موازنة الحمولة أمام وحدة الدخول المُوحَّد في Edge ويُنهي بروتوكول أمان طبقة النقل (TLS) على أداة موازنة الحمولة. في الشكل التالي، يُنهي جهاز موازنة الحمل بروتوكول أمان طبقة النقل (TLS) على المنفذ 443، ثم يعيد توجيه الطلبات إلى وحدة الدخول المُوحَّد في Edge على المنفذ 9099:

في هذه الإعدادات، تثق في الاتصال من موازن الحمولة إلى وحدة الدخول المُوحَّد في Edge وبالتالي، ليست هناك حاجة إلى استخدام بروتوكول أمان طبقة النقل (TLS) لهذا الاتصال. ومع ذلك، على الكيانات الخارجية، مثل موفِّر الهوية عبر SAML، الوصول الآن إلى وحدة الدخول المُوحَّد في Edge على المنفذ 443، وليس على المنفذ غير المحمي 9099.

يرجع سبب ضبط وحدة الدخول المُوحَّد في Edge في وضع SSL_PROXY إلى أنّ وحدة الدخول المُوحَّد في Edge تُنشئ تلقائيًا عناوين URL لإعادة التوجيه التي يستخدمها موفِّر الهوية (IDP) خارجيًا كجزء من عملية المصادقة. لذلك، يجب أن تحتوي عناوين URL لإعادة التوجيه هذه على رقم المنفذ الخارجي في أداة موازنة الحمل، وهو 443 في هذا المثال، وليس المنفذ الداخلي في وحدة الدخول المُوحَّد في Edge‏، وهو 9099.

ملاحظة: ليس عليك إنشاء شهادة بروتوكول أمان طبقة النقل (TLS) ومفتاح له في وضع SSL_PROXY لأنّ الاتصال من موازنة التحميل إلى وحدة الدخول المُوحَّد (SSO) في Edge يستخدم بروتوكول HTTP.

لضبط وحدة الدخول المُوحَّد في Edge لميزة SSL_PROXY:

  1. أضِف الإعدادات التالية إلى ملف الضبط:
    # Enable SSL_PROXY mode.
    SSO_TOMCAT_PROFILE=SSL_PROXY
    
    # Specify the apigee-sso port, typically between 1025 and 65535.
    # Typically ports 1024 and below require root access by apigee-sso.
    # The default is 9099.
    SSO_TOMCAT_PORT=9099
    
    # Specify the port number on the load balancer for terminating TLS.
    # This port number is necessary for apigee-sso to auto-generate redirect URLs.
    SSO_TOMCAT_PROXY_PORT=443
    SSO_PUBLIC_URL_PORT=443
    
    # Set public access scheme of apigee-sso to https.
    SSO_PUBLIC_URL_SCHEME=https
  2. ضبط وحدة الدخول المُوحَّد في Edge:
    /opt/apigee/apigee-service/bin/apigee-service apigee-sso setup -f configFile
  3. عدِّل إعدادات موفِّر الهوية (IdP) لتقديم طلب HTTPS الآن على المنفذ 443 لجهاز موازنة الحمولة من أجل الوصول إلى ميزة "تسجيل الدخول المُوحَّد في Edge". راجِع مقالة ضبط موفِّر هوية مستخدمي SAML للاطّلاع على مزيد من المعلومات.
  4. عدِّل إعدادات واجهة مستخدم Edge لاستخدام بروتوكول HTTPS من خلال ضبط السمات التالية في ملف الإعدادات:
    SSO_PUBLIC_URL_PORT=443
    SSO_PUBLIC_URL_SCHEME=https

    بعد ذلك، عدِّل واجهة مستخدم Edge:

    /opt/apigee/apigee-service/bin/apigee-service edge-ui configure-sso -f configFile

    اطّلِع على تفعيل SAML في واجهة مستخدم Edge للاطّلاع على مزيد من المعلومات.

  5. إذا ثبَّتْت بوابة Apigee Developer Services (أو البوابة ببساطة)، عدِّلها لاستخدام بروتوكول HTTPS من أجل الوصول إلى ميزة الدخول المُوحَّد في Ede. لمزيد من المعلومات، يُرجى الاطّلاع على ضبط البوابة لاستخدام SAML للتواصل مع Edge

تفعيل وضع SSL_TERMINATION

في ما يتعلّق بوضع SSL_TERMINATION، يجب استيفاء الشروط التالية:

  • تم إنشاء شهادة بروتوكول أمان طبقة النقل (TLS) ومفتاح وتخزينهما في ملف تخزين مفاتيح. لا يمكنك استخدام شهادة موقَّعة ذاتيًا. يجب إنشاء شهادة من هيئة إصدار الشهادات.
  • تعديل إعدادات الضبط لـ apigee-sso.

لإنشاء ملف تخزين مفاتيح من شهادتك ومفتاحك:

  1. أنشئ دليلاً لملف JKS:
    sudo mkdir -p /opt/apigee/customer/application/apigee-sso/tomcat-ssl/
  2. الانتقال إلى الدليل الجديد:
    cd /opt/apigee/customer/application/apigee-sso/tomcat-ssl/
  3. أنشئ ملف JKS يحتوي على الشهادة والمفتاح. يجب تحديد متجر مفاتيح لهذا الوضع يحتوي على شهادة موقَّعة من قِبل هيئة إصدار الشهادات. لا يمكنك استخدام شهادة موقَّعة ذاتيًا. للحصول على مثال على إنشاء ملف JKS، يُرجى الاطّلاع على مقالة ضبط بروتوكول أمان طبقة النقل (TLS) أو طبقة المقابس الآمنة (SSL) للخدمة Edge On Premises.
  4. اجعل ملف JKS مملوكًا للمستخدم "apigee":
    sudo chown -R apigee:apigee /opt/apigee/customer/application/apigee-sso/tomcat-ssl

لضبط وحدة الدخول المُوحَّد في Edge:

  1. أضِف الإعدادات التالية إلى ملف الضبط:
    # Enable SSL_TERMINATION mode.
    SSO_TOMCAT_PROFILE=SSL_TERMINATION
    
    # Specify the path to the keystore file.
    SSO_TOMCAT_KEYSTORE_FILEPATH=/opt/apigee/customer/application/apigee-sso/tomcat-ssl/keystore.jks
    
    SSO_TOMCAT_KEYSTORE_ALIAS=sso
    
    # The password specified when you created the keystore.
    SSO_TOMCAT_KEYSTORE_PASSWORD=keystorePassword
    
    # Specify the HTTPS port number between 1025 and 65535.
    # Typically ports 1024 and below require root access by apigee-sso.
    # The default is 9099.
    SSO_TOMCAT_PORT=9443
    SSO_PUBLIC_URL_PORT=9443
    
    # Set public access scheme of apigee-sso to https.
    SSO_PUBLIC_URL_SCHEME=https
  2. ضبط وحدة الدخول المُوحَّد في Edge:
    /opt/apigee/apigee-service/bin/apigee-service apigee-sso setup -f configFile
  3. عدِّل إعدادات موفِّر الهوية (IdP) لتقديم طلب HTTPS الآن على المنفذ 9443 لجهاز موازنة التحميل من أجل الوصول إلى ميزة "تسجيل الدخول المُوحَّد في Edge". راجِع مقالة ضبط موفِّر هوية ملف شخصي مستند إلى مبادرة SAML لمعرفة المزيد.
  4. عدِّل إعدادات واجهة مستخدم Edge لبروتوكول HTTPS من خلال ضبط السمات التالية:
    SSO_PUBLIC_URL_PORT=9443
    SSO_PUBLIC_URL_SCHEME=https

    اطّلِع على تفعيل SAML في واجهة مستخدم Edge للاطّلاع على مزيد من المعلومات.

  5. إذا ثبّتْت بوابة "خدمات المطوّرين"، عليك تعديلها لاستخدام بروتوكول HTTPS من أجل الوصول إلى ميزة "الدخول المُوحَّد في Ede". لمزيد من المعلومات، يُرجى الاطّلاع على مقالة إعدادبوابة Developer Services (خدمات المطوّرين) لاستخدام بروتوكول SAML للتواصل مع Edge.

ضبط SSO_TOMCAT_PROXY_PORT عند استخدام وضع SSL_TERMINATION

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

في هذا السيناريو، يمكنك ضبط بروتوكول TLS في خدمة الدخول المُوحَّد في Edge بالطريقة نفسها التي اتّبعتها أعلاه في وضع SSL_TERMINATION. ومع ذلك، إذا كان موازن الحمولة يستخدم رقم منفذ TLS مختلفًا عن رقم المنفذ الذي يستخدمه Edge SSO لبروتوكول TLS، يجب أيضًا تحديد SSO_TOMCAT_PROXY_PORT في ملف الإعدادات. على سبيل المثال:

  • يُنهي جهاز موازنة الحمل بروتوكول أمان طبقة النقل (TLS) على المنفذ 443.
  • يُنهي الدخول المُوحَّد في Edge بروتوكول أمان طبقة النقل (TLS) على المنفذ 9443.

احرص على تضمين الإعداد التالي في ملف الضبط:

# Specify the port number on the load balancer for terminating TLS.
# This port number is necessary for apigee-sso to generate redirect URLs.
SSO_TOMCAT_PROXY_PORT=443
SSO_PUBLIC_URL_PORT=443

عليك ضبط موفِّر خدمة إدارة الهوية وواجهة مستخدم Edge لتقديم طلبات HTTPS على المنفذ 443.