پیکربندی Apigee SSO برای دسترسی HTTPS

نصب و پیکربندی Apigee SSO نحوه نصب و پیکربندی واحد Apigee SSO را برای استفاده از HTTP در درگاه ۹۰۹۹، همان‌گونه که در دارایی زیر در فایل پیکربندی Edge مشخص شده است، توضیح می‌دهد:

SSO_TOMCAT_PROFILE=DEFAULT

یا می‌توانید SSO_TOMCAT_PROFILE را روی یکی از مقادیر زیر تنظیم کنید تا دسترسی HTTPS را فعال کنید:

  • SSL_PROXY: apigee-sso، واحد Apigee SSO، را در حالت پراکسی پیکربندی می‌کند، یعنی ترازکننده‌ای بار در جلوی apigee-sso نصب کرده‌اید و «امنیت لایه انتقال» را در ترازکننده بار خاتمه داده‌اید. سپس درگاهی را که در apigee-sso برای درخواست‌های ترازکننده بار استفاده می‌شود مشخص می‌کنید.
  • SSL_TERMINATION: دسترسی «امنیت لایه انتقال» به apigee-sso در درگاه انتخابی شما فعال شد. باید یک انبار کلید برای این حالت مشخص کنید که حاوی گواهینامه‌ای باشد که توسط CA امضا شده است. نمی‌توانید از گواهینامه خودامضا استفاده کنید.

می‌توانید در زمان نصب و پیکربندی اولیه apigee-sso، HTTPS را فعال کنید یا می‌توانید آن را بعداً فعال کنید.

فعال کردن دسترسی HTTPS به apigee-sso بااستفاده از هریک از حالت‌ها، دسترسی HTTP را غیرفعال می‌کند. یعنی نمی‌توانید به‌طور هم‌زمان بااستفاده از HTTP و HTTPS به apigee-sso دسترسی داشته باشید.

فعال کردن حالت SSL_PROXY

در حالت SSL_PROXY، سیستم شما از ترازکننده بار در مقابل واحد Apigee SSO استفاده می‌کند و «امنیت لایه انتقال» را در ترازکننده بار خاتمه می‌دهد. در شکل زیر، ترازکننده بار «امنیت لایه انتقال» را در درگاه ۴۴۳ خاتمه می‌دهد، و سپس درخواست‌ها را به واحد Apigee SSO در درگاه ۹۰۹۹ بازارسال می‌کند:

در این پیکربندی، به اتصال از ترازکننده بار به واحد Apigee SSO اعتماد می‌کنید، بنابراین نیازی به استفاده از TLS برای آن اتصال نیست. بااین‌حال، نهادهای خارجی، مانند IDP، اکنون باید به واحد Apigee SSO در درگاه ۴۴۳ دسترسی داشته باشند، نه در درگاه محافظت‌نشده ۹۰۹۹.

دلیل پیکربندی واحد Apigee SSO در حالت SSL_PROXY این است که واحد Apigee SSO نشانی‌های وب هدایت مجدد را که IDP به‌صورت خارجی به‌عنوان بخشی از فرایند اصالت‌سنجی استفاده می‌کند به‌طور خودکار تولید می‌کند. بنابراین، این نشانی‌های وب هدایت‌کننده باید حاوی شماره درگاه خارجی در ترازکننده بار، در این مثال ۴۴۳، باشند و نه درگاه داخلی در واحد Apigee SSO، یعنی ۹۰۹۹.

برای پیکربندی کردن واحد Apigee SSO برای حالت 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. پیکربندی واحد Apigee SSO:
    /opt/apigee/apigee-service/bin/apigee-service apigee-sso setup -f configFile
  3. پیکربندی IDP خود را به‌روز کنید تا اکنون درخواست HTTPS را در درگاه ۴۴۳ ترازکننده بار برای دسترسی به Apigee SSO انجام دهد. برای کسب اطلاعات بیشتر، یکی از موارد زیر را ببینید:
  4. پیکربندی «میانای کاربری Edge» را برای HTTPS با تنظیم کردن دارایی‌های زیر در فایل پیکربندی به‌روز کنید:
    SSO_PUBLIC_URL_PORT=443
    SSO_PUBLIC_URL_SCHEME=https

    سپس «واسط کاربر Edge» را به‌روز کنید:

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

    برای «واسط کاربر کلاسیک»، از عنصر edge-ui استفاده کنید.

  5. اگر درگاه «خدمات توسعه‌دهنده Apigee» (یا به‌سادگی، درگاه) را نصب کرده‌اید، آن را به‌روز کنید تا از HTTPS برای دسترسی به Apigee SSO استفاده کند. برای اطلاعات بیشتر، پیکربندی کردن درگاه برای استفاده از ارائه‌دهندگان هویت خارجی را ببینید

برای اطلاعات بیشتر، فعال کردن IDP خارجی در «واسط کاربر Edge» را ببینید.

فعال کردن حالت SSL_TERMINATION

برای حالت SSL_TERMINATION، باید:

  • گواهینامه و کلید «امنیت لایه انتقال» تولید کنید و آن‌ها را در فایل انبار کلید ذخیره کنید. نمی‌توانید از گواهینامه خودامضا استفاده کنید. باید گواهی را از مرجع صدور گواهی تولید کنید.
  • به‌روزرسانی تنظیمات پیکربندی برای apigee-sso.

برای ایجاد فایل keystore از گواهی و کلید:

  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، به پیکربندی «امنیت لایه انتقال»/ SSL برای Edge On Premises مراجعه کنید.
  4. فایل JKS را متعلق به کاربر «apigee» کنید:
    sudo chown -R apigee:apigee /opt/apigee/customer/application/apigee-sso/tomcat-ssl

برای پیکربندی واحد Apigee SSO:

  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. پیکربندی واحد Apigee SSO:
    /opt/apigee/apigee-service/bin/apigee-service apigee-sso setup -f configFile
  3. پیکربندی IDP خود را به‌روز کنید تا اکنون درخواست HTTPS را در درگاه ۹۴۴۳ ترازکننده بار برای دسترسی به Apigee SSO ایجاد کند. مطمئن شوید که هیچ سرویس دیگری از این درگاه استفاده نمی‌کند.

    برای اطلاعات بیشتر، به موارد زیر مراجعه کنید:

  4. پیکربندی «میانای کاربر Edge» را برای HTTPS با تنظیم کردن ویژگی‌های زیر به‌روز کنید:
    SSO_PUBLIC_URL_PORT=9443
    SSO_PUBLIC_URL_SCHEME=https
  5. اگر درگاه «خدمات توسعه‌دهنده» را نصب کرده‌اید، آن را به‌روز کنید تا از HTTPS برای دسترسی به Apigee SSO استفاده کند. برای اطلاعات بیشتر، به پیکربندی کردن درگاه برای استفاده از ارائه‌دهندگان هویت خارجی مراجعه کنید.

هنگام استفاده از حالت SSL_TERMINATION، متغیر SSO_TOMCAT_PROXY_PORT را تنظیم کنید

ممکن است در جلوی واحد Apigee SSO ترازکننده بار داشته باشید که «امنیت لایه انتقال» را در ترازکننده بار خاتمه می‌دهد اما «امنیت لایه انتقال» را بین ترازکننده بار و Apigee SSO نیز فعال می‌کند. در شکل بالا برای حالت SSL_PROXY، این یعنی اتصال از ترازکننده بار به Apigee SSO از «امنیت لایه انتقال» استفاده می‌کند.

در این سناریو، «امنیت لایه انتقال» را در Apigee SSO درست همان‌طور که در بالا برای حالت SSL_TERMINATION انجام دادید پیکربندی می‌کنید. بااین‌حال، اگر ترازکننده بار از شماره درگاه TLS متفاوتی نسبت‌به آنچه Apigee SSO برای TLS استفاده می‌کند استفاده می‌کند، باید دارایی SSO_TOMCAT_PROXY_PORT را نیز در فایل پیکربندی مشخص کنید. برای مثال:

  • ترازکننده بار «امنیت لایه انتقال» را در درگاه ۴۴۳ خاتمه می‌دهد
  • ‫Apigee SSO «امنیت لایه انتقال» را در درگاه ۹۴۴۳ خاتمه می‌دهد

حتماً تنظیم زیر را در فایل پیکربندی اضافه کنید:

# 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

‫IDP و «میانای کاربر Edge» را پیکربندی کنید تا درخواست‌های HTTPS را در درگاه ۴۴۳ انجام دهند.