1.6. 配置 OpenShift 服务服务证书,以便为 Keycloak 生成 TLS 证书


OpenShift 的服务服务证书可以自动生成和管理传输层安全(TLS)证书,供 Keycloak 使用。OpenShift 集群内的基础架构组件(如 Ingress Controller)将信任这些 TLS 证书。

先决条件

  • Red Hat OpenShift Container Platform 4.15 或更高版本。
  • 安装 RHBK 操作器.
  • 使用 cluster-admin 角色访问 OpenShift Web 控制台。

流程

  1. 在 OpenShift Web 控制台中,从 Administrator 视角中,从导航菜单中展开 Home,再单击 Projects
  2. 搜索 keycloak,然后选择 keycloak-system 命名空间。
  3. 创建新服务。

    1. + 图标。
    2. Import YAML 文本框中,复制示例,并将它粘贴到文本框中。

      Example

      apiVersion: v1
      kind: Service
      metadata:
        annotations:
          service.beta.openshift.io/serving-cert-secret-name: keycloak-tls
        labels:
          app: keycloak
          app.kubernetes.io/instance: keycloak
        name: keycloak-service-trusted
        namespace: keycloak-system
      spec:
        internalTrafficPolicy: Cluster
        ipFamilies:
        - IPv4
        ipFamilyPolicy: SingleStack
        ports:
        - name: https
          port: 8443
        selector:
          app: keycloak
          app.kubernetes.io/instance: keycloak
      Copy to Clipboard Toggle word wrap

    3. Create 按钮。
  4. 从导航菜单中展开 Operators,点 Installed Operators,然后点 Keycloak Operator
  5. Keycloak 资源的 YAML 视图中,在 spec 部分添加 ingress 属性:

    Example

    spec:
    ...
      ingress:
        annotations:
          route.openshift.io/destination-ca-certificate-secret: keycloak-tls
          route.openshift.io/termination: reencrypt
    ...
    Copy to Clipboard Toggle word wrap

    默认情况下,Keycloak operator 创建 Ingress 资源而不是路由。OpenShift 根据 Ingress 定义自动创建路由。

  6. spec 部分下指定包含 TLS 证书的 secret 名称:

    Example

    spec:
    ...
      http:
        tlsSecret: keycloak-tls
    ...
    Copy to Clipboard Toggle word wrap

    一旦 Keycloak 启动后,OpenShift 的服务服务证书将开始为 Keycloak 生成 TLS 证书。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat