为 INIFISPAN 配置 TLS
在 Kubernetes 中部署 bitnami/keycloak 时,它在 Pod 中使用默认的 Infinispan 缓存类型。尽管部署多个 bitnami keycloak pod 可确保它们之间通过内部 SSL 证书进行安全通信,但 keycloak pod 内的 Infinispan 实例之间的通信仍然不安全。
有没有一种方法可以在这些 Infinispan 实例之间建立安全的 SSL 通信,因为它们不可避免地需要相互通信?
免责声明:我没有检查
bitnami/keycloak
,所以我的答案是通用的。
最新版本的Keycloak支持Infinispan通信的TLS加密。检查 GitHub 问题 #25702 和 Keycloak 文档。
如果该功能不可用,您可以手动配置JGroups来加密数据。为此,您需要更改 Infinispan 配置 XML 文件以添加自定义堆栈。请参阅Infinispan 文档页面了解相关信息。
在 JGroups 中,此文档页面描述了加密数据的方法。请检查第 6.17.1 节了解 TLS,其中 JGroups 将
SSLSocket
与 TCP 结合使用,或检查第 6.17.2 节,其中 JGroups 在发送前对有效负载进行加密。