1.5. 配置 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

    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
    ...

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

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

    Example

    spec:
    ...
      http:
        tlsSecret: keycloak-tls
    ...

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

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.