Đị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 tính năng SSO của Apigee mô tả cách cài đặt và định cấu hình mô-đun SSO của Apigee để sử dụng HTTP trên cổng 9099, theo chỉ định của thuộc tính sau 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 để cấp quyền truy cập HTTPS:

  • SSL_PROXY: Định cấu hình apigee-sso (mô-đun SSO của Apigee) ở chế độ proxy, tức là bạn đã cài đặt một trình cân bằng tải trước apigee-sso và chấm dứt TLS trên trình cân bằng tải. Sau đó, bạn sẽ chỉ định cổng dùng trên apigee-sso cho các yêu cầu từ trình cân bằng tải.
  • SSL_TERMINATION: Cho phép truy cập TLS vào apigee-sso trên cổng mà 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ỉ do một CA ký. 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 cài đặt và định cấu hình apigee-sso lúc đầu, hoặc có thể bật sau.

Việc bật quyền truy cập HTTPS vào apigee-sso bằng một trong hai chế độ sẽ vô hiệu hoá quyền truy cập HTTP. Điều này nghĩa là bạn không thể truy cập apigee-sso đồng thời cả HTTP và HTTPS.

Bật chế độ SSL_PROXY

Ở chế độ SSL_PROXY, hệ thống của bạn sử dụng một 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 sau, 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:

Ở 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 thực thể bên ngoài (chẳng hạn như IDP) nay 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 không được bảo vệ là 9099.

Lý do để định cấu hình mô-đun SSO của Apigee ở chế độ SSL_PROXY là vì mô-đun SSO của Apigee sẽ tự động tạo các URL chuyển hướng mà IDP sử dụng bên ngoài trong quá trình xác thực. Do đó, các URL chuyển hướng này phải chứa số cổng bên ngoài trên trình cân bằng tải (443) trong ví dụ này, chứ không phải cổng nội bộ trên mô-đun SSO của Apigee là 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 IDP của bạn để thực hiện một yêu cầu HTTPS trên cổng 443 của trình cân bằng tải để truy cập vào Apigee SSO. Để biết thêm thông tin, hãy xem một trong những phần sau:
  4. Cập nhật cấu hình giao diện người dùng Edge cho HTTPS bằng cách thiết lập 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 Apigee (hay đơn giản là cổng), hãy cập nhật cổng này để sử dụng HTTPS để truy cập vào Apigee. Để biết thêm thông tin, hãy xem phần Định cấu hình cổng thông tin để sử dụng các nhà cung cấp danh tính (IDP) bên ngoài

Hãy xem bài viết Bật nhà cung cấp danh tính (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_REQUESTINATION

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

  • Tạo chứng chỉ và khoá TLS rồi lưu trữ các chứng chỉ và khoá đó 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ỉ từ một tổ chức phát hành chứng chỉ (CA).
  • Cập nhật chế độ cài đặt cấu hình cho apigee-sso.

Cách tạo tệp kho khoá từ chứng chỉ và khoá của bạn:

  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á. Đối với chế độ này, bạn phải chỉ định một kho khoá có chứa chứng chỉ do CA ký. Bạn không thể sử dụng chứng chỉ tự ký. Để biết ví dụ về cách tạo tệp JKS, hãy xem phần Định cấu hình TLS/SSL cho Edge On Premises.
  4. Tạo tệp JKS thuộc quyền sở hữu của người dùng "apigee":
    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 một yêu cầu HTTPS trên cổng 9443 của trình cân bằng tải để truy cập vào 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 này lên bằng HTTPS để truy cập vào Apigee. Để biết thêm thông tin, hãy xem phần Định cấu hình cổng thông tin để sử dụng các nhà cung cấp danh tính (IDP) bên ngoài.

Đặt SSO_TOMCAT_PROXY_Port khi sử dụng chế độ SSL_termINATION

Bạn có thể đặt một trình cân bằng tải ở phía trước mô-đun SSO của Apigee giúp chấm dứt TLS trên trình cân bằng tải nhưng cũng bật TLS giữa trình cân bằng tải và Apigee SSO. Trong hình trên về chế độ SSL_PROXY, điều này có nghĩa là kết nối từ trình cân bằng tải đến tính năng SSO của Apigee có sử dụng TLS.

Trong trường hợp này, bạn định cấu hình TLS trên tính năng Đăng nhập một lần (SSO) của Apigee giống như cách bạn đã làm ở trên cho chế độ SSL_TERMINATION. Tuy nhiên, nếu trình cân bằng tải sử dụng số cổng TLS khác với số cổng mà quá trình ứng dụng SSO dùng cho TLS, thì 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 kết thúc TLS trên cổng 443
  • Hoạt động đăng nhập một lần (SSO) của Apigee chấm dứt TLS trên cổng 9443

Nhớ thêm chế độ cài đặt sau đây vào 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 giao diện người dùng IDP và Edge để thực hiện các yêu cầu HTTPS trên cổng 443.