适用于私有云的 Edge v4.19.01
安装和配置 Edge SSO 介绍了如何 按照 Edge 配置文件中包含以下属性:
SSO_TOMCAT_PROFILE=DEFAULT
或者,您可以将 SSO_TOMCAT_PROFILE
设置为以下其中一项
值以启用 HTTPS 访问:
- SSL_PROXY - 配置 Edge SSO 模块
apigee-sso
处于代理模式,这意味着您已在apigee-sso
前面安装了负载平衡器 以及已终止的 TLS然后指定在apigee-sso
上使用的端口 来自负载平衡器的请求 - SSL_TERMINATION - 启用了 TLS 访问
apigee-sso
上的 您选择的端口您必须为此模式指定一个密钥库,其中包含由 加拿大。您无法使用自签名证书。
您可以在最初安装和配置 HTTPS 时选择启用 HTTPS。
apigee-sso
,也可以稍后启用。
如果使用任一模式启用对 apigee-sso
的 HTTPS 访问权限,都会停用 HTTP
访问权限。也就是说,您无法同时使用 HTTP 和 HTTPS 访问 apigee-sso
同时进行。
启用 SSL_PROXY 模式
在 SSL_PROXY
模式下,您的系统
在 Edge SSO 模块前面使用负载平衡器,并终止负载平衡器上的 TLS。在
如下图所示,负载平衡器会在端口 443 上终止 TLS,然后将请求转发到
端口 9099 上的 Edge SSO 模块:
在此配置中,您信任从负载平衡器到 Edge SSO 模块的连接。 因此无需针对该连接使用 TLS但是,SAML 等外部实体 IDP,现在必须通过端口 443(而不是不受保护的端口 9099)访问 Edge SSO 模块。
在 SSL_PROXY
模式下配置 Edge SSO 模块是因为 Edge SSO 模块
自动生成在身份验证过程中供 IDP 在外部使用的重定向网址。
因此,这些重定向网址必须包含负载平衡器上的外部端口号,即 443 in
而不是 Edge SSO 模块的内部端口 (9099)。
如需为 SSL_PROXY
模式配置 Edge SSO 模块,请执行以下操作:
- 将以下设置添加到您的配置文件中:
# 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
- 配置 Edge SSO 模块:
/opt/apigee/apigee-service/bin/apigee-service apigee-sso setup -f configFile
- 更新您的 IDP 配置,立即在加载作业的端口 443 上发出 HTTPS 请求 负载平衡器访问 Edge SSO。请参阅配置 SAML IDP。
- 通过在配置文件中设置以下属性来针对 HTTPS 更新 Edge 界面配置:
SSO_PUBLIC_URL_PORT=443 SSO_PUBLIC_URL_SCHEME=https
然后更新 Edge 界面:
/opt/apigee/apigee-service/bin/apigee-service edge-ui configure-sso -f configFile
如需了解详情,请参阅在 Edge 界面上启用 SAML。
- 如果您安装了 Apigee Developer Services 门户(简称门户),请将其更新为使用 HTTPS, 访问 Edge SSO。有关详情,请参阅 配置门户以使用 SAML 与 Edge 通信
启用 SSL_TERMINATION 模式
对于 SSL_TERMINATION
模式,您必须:
- 生成 TLS 证书和密钥,并将其存储在密钥库文件中。您不能使用 自签名证书您必须通过 CA 生成证书。
- 更新
apigee-sso.
的配置设置
如需基于证书和密钥创建密钥库文件,请执行以下操作:
- 为 JKS 文件创建目录:
sudo mkdir -p /opt/apigee/customer/application/apigee-sso/tomcat-ssl/
- 切换到新目录:
cd /opt/apigee/customer/application/apigee-sso/tomcat-ssl/
- 创建包含证书和密钥的 JKS 文件。您必须为此模式指定密钥库 (包含由 CA 签署的证书)。您无法使用自签名证书。有关 请参阅为 JKS 文件配置 TLS/SSL Edge On Premises。
- 创建“apigee”所拥有的 JKS 文件用户:
sudo chown -R apigee:apigee /opt/apigee/customer/application/apigee-sso/tomcat-ssl
要配置 Edge SSO 模块,请执行以下操作:
- 将以下设置添加到您的配置文件中:
# 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
- 配置 Edge SSO 模块:
/opt/apigee/apigee-service/bin/apigee-service apigee-sso setup -f configFile
- 更新您的 IDP 配置,立即在加载作业的端口 9443 上发出 HTTPS 请求 负载平衡器访问 Edge SSO。确保没有其他服务正在使用此端口。 有关详情,请参阅配置 SAML IDP。
- 通过设置以下属性,针对 HTTPS 更新 Edge 界面配置:
SSO_PUBLIC_URL_PORT=9443 SSO_PUBLIC_URL_SCHEME=https
如需了解详情,请参阅在 Edge 界面上启用 SAML。
- 如果您已安装 Developer Services 门户,请更新该门户以使用 HTTPS, 访问 Edge SSO。有关详情,请参见配置 使用 SAML 与 Edge 通信的开发者服务门户。
使用 SSL_TERMINATION 模式时设置 SSO_TOMCAT_PROXY_PORT
您可能会在 Edge SSO 模块前面放置一个负载平衡器,该负载平衡器会在负载上终止 TLS
同时还会在负载平衡器和 Edge SSO 之间启用 TLS。在上图中
对于 SSL_PROXY
模式,这表示从负载平衡器到 Edge SSO 的连接使用
TLS。
在这种情况下,您需要按照上文中针对
SSL_TERMINATION
模式。但是,如果负载
负载平衡器使用的 TLS 端口号与 Edge SSO 用于 TLS 的不同,您还必须指定
配置文件中的 SSO_TOMCAT_PROXY_PORT
属性。例如:
- 负载平衡器在端口 443 上终止 TLS
- Edge SSO 会在端口 9443 上终止 TLS
请确保在配置文件中包含以下设置:
# 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 界面,以在端口 443 上发出 HTTPS 请求。