配置 Ingress 和 TLS
本指南介绍如何通过启用 TLS 加密的 Kubernetes Ingress 从外部访问 Keycloak 实例,这是生产部署所必需的。
TLS 配置模式
Alauda Application Services Identity Management E1 支持两种不同的 TLS 模式。请选择与您的基础设施匹配的模式:
本指南演示 Ingress TLS 模式(推荐用于大多数 Kubernetes 环境)。
前提条件
- 正在运行的 Keycloak 实例(请参阅 安装)。
- 目标主机名对应的有效 TLS 证书和私钥。
- 已部署在集群中的 Ingress 控制器(例如 NGINX)。
第 1 步:创建 TLS Secret
根据您的证书和私钥创建 Kubernetes TLS Secret:
验证 Secret 是否已创建:
第 2 步:更新 Keycloak CR
更新您的 Keycloak CR,以启用带 TLS 的 Ingress 并配置主机名:
应用更新后的清单:
第 3 步:验证 Ingress
检查 Ingress 资源是否已创建并具有正确的主机名:
预期输出:
第 4 步:验证 HTTPS 访问
访问 https://keycloak.example.com 中的 Keycloak 管理控制台,并确认连接安全。
检查 Keycloak 是否已就绪:
配置参考
代理标头配置
使用反向代理或 Ingress 控制器时,必须正确设置 spec.proxy.headers。配置不正确可能会因信任伪造的标头而使 Keycloak 暴露于安全漏洞之中。