12.3. 配置红帽单点登录集成

以下流程逐步指导您配置 zync-que 以使用自定义 CA 证书。

12.3.1. 配置 zync-que 以使用自定义 CA 证书

先决条件

  • 您必须能够通过 https 提供 RH-SSO,并确保它可通过 by zync-que 访问。要测试此类型,请执行以下操作:

    curl https://rhsso-fqdn
  • 3scale 2.2 和更高版本支持带有 SSL_CERT_FILE 环境变量的 RH-SSO 的自定义 CA 证书。此变量指向证书捆绑包的本地路径。
注意
  • 些版本的 OpenSSL 接受 -showcerts 而不是 --showcerts。将以下命令相应地修改为正在使用的版本:
  • 以下流程步骤 1 中的命令涉及 <rhsso_fqdn>。完全限定域名(FQDN)是人类可读的域名,如 host.example.com

流程

  1. 运行以下命令获取正确的证书链:

    echo -n | openssl s_client -connect <rhsso_fqdn>:<rhsso_port> -servername <rhsso_fqdn> --showcerts | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > customCA.pem

流程

  1. 使用以下 cURL 命令验证新证书:预期响应是 域的 JSON 配置。如果验证失败,这表示您的证书可能不正确。

    curl -v https://<secure-sso-host>/auth/realms/master --cacert customCA.pem
  2. 将证书捆绑包添加到 Zync pod:

    1. 收集 Zync pod 上 /etc/pki/tls/cert.pem 文件的现有内容。运行:

      oc exec <zync-que-pod-id> cat /etc/pki/tls/cert.pem > zync.pem
    2. 附加自定义 CA 证书文件的内容 to zync.pem

      cat customCA.pem >> zync.pem
    3. 将新文件作为 ConfigMap 附加到 Zync pod:

      oc create configmap zync-ca-bundle --from-file=./zync.pem
      oc set volume dc/zync-que --add --name=zync-ca-bundle --mount-path /etc/pki/tls/zync/zync.pem --sub-path zync.pem --source='{"configMap":{"name":"zync-ca-bundle","items":[{"key":"zync.pem","path":"zync.pem"}]}}'
  3. 部署后,验证证书是否已附加,内容是否正确:

    oc exec <zync-pod-id> cat /etc/pki/tls/zync/zync.pem
  4. 在 Zync 上配置 SSL_CERT_FILE 环境变量以指向新的 CA 证书捆绑包:

    oc set env dc/zync-que SSL_CERT_FILE=/etc/pki/tls/zync/zync.pem