Định cấu hình tính năng SSO của Apigee để truy cập qua HTTPS

Bài viết Cài đặt và định cấu hình dịch vụ SSO của Apigee mô tả cách để cài đặt và định cấu hình mô-đun SSO của Apigee nhằm sử dụng HTTP trên cổng 9099, như được chỉ định bởi sau đây trong tệp cấu hình Edge:

SSO_TOMCAT_PROFILE=DEFAULT

Ngoài ra, bạn có thể đặt SSO_TOMCAT_PROFILE thành một trong các giá trị sau để bật quyền truy cập HTTPS:

  • SSL_PROXY: Định cấu hình apigee-sso, mô-đun SSO của Apigee, ở chế độ proxy, nghĩa là bạn đã cài đặt trình cân bằng tải trước apigee-sso và kết thúc TLS trên trình cân bằng tải. Sau đó, bạn chỉ định cổng được sử dụng apigee-sso cho các yêu cầu từ trình cân bằng tải.
  • SSL_TERMINATION: Đã bật quyền truy cập TLS vào apigee-sso trên cổng bạn chọn. Bạn phải chỉ định một kho khoá cho chế độ này có chứa một chứng chỉ có chữ ký của một CA. Bạn không thể sử dụng chứng chỉ tự ký.

Bạn có thể chọn bật HTTPS tại thời điểm bạn cài đặt và định cấu hình ban đầu apigee-sso hoặc bạn có thể bật tính năng này vào lúc khác.

Việc bật quyền truy cập HTTPS vào apigee-sso bằng một trong hai chế độ sẽ tắt HTTP truy cập. Tức là bạn không thể truy cập apigee-sso bằng cả HTTP và HTTPS đồng thời.

Bật chế độ SSL_PROXY

Ở chế độ SSL_PROXY, hệ thống của bạn sử dụng trình cân bằng tải trước mô-đun SSO của Apigee và chấm dứt TLS trên trình cân bằng tải. Trong hình bên dưới, trình cân bằng tải chấm dứt TLS trên cổng 443, sau đó chuyển tiếp các yêu cầu đến mô-đun SSO của Apigee trên cổng 9099:

Trong cấu hình này, bạn tin tưởng kết nối từ trình cân bằng tải đến mô-đun SSO của Apigee, nên không cần phải sử dụng TLS cho kết nối đó. Tuy nhiên, các pháp nhân bên ngoài, chẳng hạn như IDP, hiện phải truy cập vào mô-đun SSO của Apigee trên cổng 443, chứ không phải trên cổng 9099 không được bảo vệ.

Lý do để định cấu hình mô-đun SSO của Apigee ở chế độ SSL_PROXY là vì các dịch vụ SSO của Apigee mô-đun tự động tạo các URL chuyển hướng được IDP sử dụng bên ngoài như một phần của quá trình xác thực của chúng tôi. Do đó, các URL chuyển hướng này phải chứa số cổng bên ngoài khi tải bộ cân bằng, 443 trong ví dụ này và không phải cổng nội bộ trên mô-đun SSO của Apigee, 9099.

Cách định cấu hình mô-đun SSO của Apigee cho chế độ SSL_PROXY:

  1. Thêm các chế độ cài đặt sau vào tệp cấu hình:
    # 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. Định cấu hình mô-đun SSO của Apigee:
    /opt/apigee/apigee-service/bin/apigee-service apigee-sso setup -f configFile
  3. Cập nhật cấu hình Nhà cung cấp danh tính (IDP) để thực hiện yêu cầu HTTPS trên cổng 443 của tải trình cân bằng để truy cập vào dịch vụ SSO của Apigee. Để biết thêm thông tin, hãy xem một trong các bài viết sau:
  4. Cập nhật cấu hình giao diện người dùng Edge cho HTTPS bằng cách đặt các thuộc tính sau trong tệp cấu hình:
    SSO_PUBLIC_URL_PORT=443
    SSO_PUBLIC_URL_SCHEME=https

    Sau đó, hãy cập nhật giao diện người dùng Edge:

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

    Sử dụng thành phần edge-ui cho giao diện người dùng kiểu cũ.

  5. Nếu bạn đã cài đặt cổng Dịch vụ dành cho nhà phát triển của Apigee (hoặc đơn giản là cổng), hãy cập nhật cổng đó để sử dụng HTTPS để truy cập vào dịch vụ SSO của Apigee. Cho thông tin khác, xem Định cấu hình cổng thông tin để sử dụng nhà cung cấp danh tính bên ngoài

Xem bài viết Bật IDP bên ngoài trên giao diện người dùng Edge để biết thêm thông tin.

Bật chế độ SSL_TERMINATION

Đối với chế độ SSL_TERMINATION, bạn phải:

  • Tạo chứng chỉ và khoá TLS rồi lưu trữ những thông tin này trong tệp kho khoá. Bạn không thể sử dụng chứng chỉ tự ký. Bạn phải tạo chứng chỉ của một CA.
  • Cập nhật chế độ cài đặt cấu hình cho apigee-sso.

Cách tạo tệp kho khoá qua chứng chỉ và khoá:

  1. Tạo thư mục cho tệp JKS:
    sudo mkdir -p /opt/apigee/customer/application/apigee-sso/tomcat-ssl/
  2. Thay đổi sang thư mục mới:
    cd /opt/apigee/customer/application/apigee-sso/tomcat-ssl/
  3. Tạo tệp JKS chứa chứng chỉ và khoá. Bạn phải chỉ định một kho khoá cho chế độ này có chứa chứng chỉ do một CA ký. Bạn không thể sử dụng chứng chỉ tự ký. Ví dụ về tạo tệp JKS, hãy xem Định cấu hình TLS/SSL cho Cạnh trên cơ sở.
  4. Tạo tệp JKS thuộc sở hữu của "apigee" người dùng:
    sudo chown -R apigee:apigee /opt/apigee/customer/application/apigee-sso/tomcat-ssl

Cách định cấu hình mô-đun SSO của Apigee:

  1. Thêm các chế độ cài đặt sau vào tệp cấu hình:
    # 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. Định cấu hình mô-đun SSO của Apigee:
    /opt/apigee/apigee-service/bin/apigee-service apigee-sso setup -f configFile
  3. Cập nhật cấu hình IDP của bạn để thực hiện yêu cầu HTTPS trên cổng 9443 của tải trình cân bằng để truy cập vào dịch vụ SSO của Apigee. Đảm bảo rằng không có dịch vụ nào khác đang sử dụng cổng này.

    Để biết thêm thông tin, hãy xem phần dưới đây:

  4. Cập nhật cấu hình giao diện người dùng Edge cho HTTPS bằng cách đặt các thuộc tính sau:
    SSO_PUBLIC_URL_PORT=9443
    SSO_PUBLIC_URL_SCHEME=https
  5. Nếu bạn đã cài đặt cổng Dịch vụ dành cho nhà phát triển, hãy cập nhật cổng đó để sử dụng HTTPS nhằm truy cập vào dịch vụ SSO của Apigee. Để biết thêm thông tin, hãy xem Định cấu hình cổng thông tin để sử dụng nhà cung cấp danh tính bên ngoài.

Đặt SSO_TOMCAT_PROXY_PORT khi sử dụng chế độ SSL_TERMINATION

Bạn có thể dùng một trình cân bằng tải trước mô-đun SSO của Apigee để chấm dứt TLS trên tải cân bằng mà còn bật TLS giữa trình cân bằng tải và SSO của Apigee. Trong hình trên cho chế độ SSL_PROXY, tức là kết nối từ trình cân bằng tải với SSO của Apigee sử dụng TLS (Bảo mật tầng truyền tải).

Trong trường hợp này, bạn định cấu hình TLS trong SSO của Apigee giống như đã thực hiện ở trên cho Chế độ SSL_TERMINATION. Tuy nhiên, nếu tải trình cân bằng sử dụng số cổng TLS khác với số dịch vụ SSO của Apigee sử dụng cho TLS, sau đó bạn cũng phải chỉ định thuộc tính SSO_TOMCAT_PROXY_PORT trong tệp cấu hình. Ví dụ:

  • Trình cân bằng tải chấm dứt TLS trên cổng 443
  • Dịch vụ SSO của Apigee chấm dứt TLS trên cổng 9443

Hãy nhớ bao gồm chế độ cài đặt sau đây trong tệp cấu hình:

# 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

Định cấu hình cho IDP và giao diện người dùng Edge để thực hiện các yêu cầu HTTPS trên cổng 443.