Keycloak管理控制台可用变量咨询:获取KC_HOSTNAME对应变量
Keycloak 动态变量在 Realm 导出/导入中的使用
对应 KC_HOSTNAME 的变量
你要找的直接对应KC_HOSTNAME环境变量值的变量是 ${hostname},它会直接替换为你设置的KC_HOSTNAME的值(不含任何路径,若配置了KC_HOSTNAME_PORT则包含端口)。
可用内置变量清单(适用于客户端配置项)
以下是Keycloak在导入Realm配置时支持的核心动态变量,可用于替换如Valid Redirect URIs这类随部署环境变化的配置:
${hostname}:纯主机名(含配置的端口),完全匹配KC_HOSTNAME的值${authBaseUrl}:Keycloak认证基础URL,旧版本(Wildfly架构)格式为https://${hostname}/auth,Keycloak 17+(Quarkus架构)默认是https://${hostname}/${scheme}:当前使用的协议(http/https),对应KC_HTTP_SCHEME或自动检测的值${port}:Keycloak监听的端口,对应KC_HTTP_PORT或KC_HTTPS_PORT
实际配置示例
在你的realm-export.json文件中,前端客户端的redirectUris可这样配置:
"redirectUris": [ "${scheme}://${hostname}/app/*", "${scheme}://${hostname}/login/callback" ]
启动时Keycloak会自动替换为当前部署的实际主机名和协议,适配不同实例的环境配置。
注意事项
- 这些变量仅在Realm导入阶段生效,导入完成后会被替换为静态值;若后续修改
KC_HOSTNAME,需重新导入Realm配置或手动更新客户端设置。 - Keycloak 17+的Quarkus版本默认上下文路径为根路径,旧版本Wildfly架构则默认使用
/auth路径,需根据版本调整变量的组合方式。
内容的提问来源于stack exchange,提问作者Pablo
相关产品推荐
相关产品推荐

