14.7. 红帽在容器中以 FIPS 模式构建 Keycloak 服务器


如果您希望红帽以 FIPS 模式在 FIPS 模式下构建 Keycloak 时,您的"主机"必须使用 FIPS 模式。容器随后将从父主机"inherit" FIPS 模式。详情请查看 RHEL 文档中的这个部分。https://access.redhat.com/documentation/zh-cn/red_hat_enterprise_linux/9/html/security_hardening/using-the-system-wide-cryptographic-policies_security-hardening#enabling-fips-mode-in-a-container_using-the-system-wide-cryptographic-policies

当通过 FIPS 模式执行的主机时,红帽构建的 Keycloak 容器镜像将仅在 fips 模式中自动处于 fips 模式。但是,请确保红帽构建的 Keycloak 容器也使用 BCFIPS jars (而不是 BC jars)并在启动时正确选项。

因此,最好在容器中运行 红帽构建的 Keycloak 来构建自己的容器镜像,并调整 使用 BCFIPS 等。

例如,您可以在当前目录中创建子目录 并添加

  • 如上所述,BC FIPS jar 文件
  • 自定义密钥存储文件 - 名为 keycloak-fips.keystore.bcfks
  • 安全文件 kc.java.security 带有为 SAML 添加的供应商

然后,在当前目录中创建 Dockerfile 类似如下:

Dockerfile:

FROM registry.redhat.io/rhbk/keycloak-rhel9:22 as builder

ADD files /tmp/files/

WORKDIR /opt/keycloak
RUN cp /tmp/files/*.jar /opt/keycloak/providers/
RUN cp /tmp/files/keycloak-fips.keystore.* /opt/keycloak/conf/server.keystore
RUN cp /tmp/files/kc.java.security /opt/keycloak/conf/

RUN /opt/keycloak/bin/kc.sh build --features=fips --fips-mode=strict

FROM registry.redhat.io/rhbk/keycloak-rhel9:22
COPY --from=builder /opt/keycloak/ /opt/keycloak/

ENTRYPOINT ["/opt/keycloak/bin/kc.sh"]
Copy to Clipboard Toggle word wrap

然后,构建 FIPS 优化的 docker 镜像并启动它,如 容器 中的 Running Red Hat build of Keycloak 所述。这些步骤要求您使用启动镜像时所描述的参数。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat