第 18 章 配置管理界面
为端点配置红帽构建的 Keycloak 管理界面,如指标和健康检查。
管理接口允许通过与主 HTTP 服务器不同的 HTTP 服务器访问管理端点。它提供隐藏外部世界中的 /metrics 或 /health 等端点,从而强化安全性。Kubernetes 环境中可能会看到最重要的优势,因为特定的管理端口可能无法公开。
18.1. 管理界面配置 复制链接链接已复制到粘贴板!
当其上公开内容时,将开启管理界面。启用指标和健康时,在默认的管理端口 9000 上公开管理端点,如 /metrics 和 /health。管理界面提供了一组选项,并且是完全可配置的。
如果没有显式设置管理接口属性,则它们的值会自动从默认的 HTTP 服务器继承。
18.1.1. port 复制链接链接已复制到粘贴板!
要更改管理界面的端口,您可以使用红帽 build of Keycloak 选项 http-management-port。
18.1.2. 相对路径 复制链接链接已复制到粘贴板!
您可以更改管理界面的相对路径,因为管理端点的前缀路径可能会有所不同。您可以通过红帽构建的 Keycloak 选项 http-management-relative-path 实现它。
例如,如果您设置了 CLI 选项 --http-management-relative-path=/management,则指标和健康端点将在 /management/ metrics 和 路径上访问。
/management /health
在指定相对路径时,用户会 自动重定向到 托管 Red Hat build of Keycloak 的路径。这意味着,当相对路径设置为 /management,并且用户访问 localhost:9000/ 时,该页面会被重定向到 localhost:9000/management。
如果没有显式设置它的值,则使用 http-relative-path 属性中的值。例如,如果您设置了 CLI 选项 --http-relative-path=/auth,这些端点可以在 /auth/metrics 和 /auth/health 路径上访问。
18.1.3. TLS 支持 复制链接链接已复制到粘贴板!
当为默认红帽构建的 Keycloak 服务器设置了 TLS 时,默认情况下,管理界面也可以通过 HTTPS 访问。管理接口只能在 HTTP 或 HTTPS 上运行,不能同时在主服务器上运行。
如果您不希望管理界面使用 HTTPS,您可以将 http-management-scheme 选项设置为 http。
为管理 HTTP 服务器设置不同的 TLS 参数提供了前缀 https-management expectations 的特定红帽构建的 Keycloak 管理界面选项。它们的功能与主 HTTP 服务器的对应部分类似,请参阅 配置 TLS。如果没有显式设置这些选项,TLS 参数将继承到默认的 HTTP 服务器。
18.1.4. 禁用管理界面 复制链接链接已复制到粘贴板!
当其上没有公开时,管理界面会自动关闭。目前,无论如何,都只会在管理界面上公开健康检查和指标。如果要在管理界面中禁用公开它们,请将红帽 Keycloak 属性的 build of legacy-observability-interface 设置为 true。
出于安全原因,不建议在默认服务器上公开健康和指标端点,您应该始终使用管理界面。请注意,legacy-observability-interface 选项已弃用,并将在以后的发行版本中删除。它只允许您为迁移留出更多时间。