You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows环境下Keycloak管理员密码重置及相关报错处理

在Windows系统中重置Keycloak管理员密码

情况1:使用内嵌H2数据库(默认配置)

  • 停止Keycloak服务,确保完全关闭。
  • 找到Keycloak安装目录下的data/h2文件夹,里面有类似keycloak.mv.db的数据库文件。
  • 打开命令提示符(CMD),导航到Keycloak的bin目录:
    cd C:\你的Keycloak路径\bin
    
  • 启动H2控制台:
    h2.bat
    
  • 在H2控制台的连接设置里,JDBC URL填对应路径(比如Keycloak在C:\keycloak,就填jdbc:h2:C:/keycloak/data/h2/keycloak),用户名默认是sa,密码留空,点击「连接」。
  • 执行以下SQL语句重置密码,把new_password换成你要的新密码,admin是默认管理员用户名(如果你的管理员账号不是admin,替换成对应名称):
    UPDATE USER_ENTITY SET CREDENTIALS = '[ { "value": "'||ENCODE('new_password', 'UTF-8')||'", "type": "password", "salt": "", "hashIterations": 0, "createdDate": '||UNIX_TIMESTAMP()||'000, "secretData": "{\"value\":\"'||ENCODE('new_password', 'UTF-8')||'\",\"salt\":\"\"}", "credentialData": "{\"hashAlgorithm\":\"pbkdf2-sha256\",\"hashIterations\":27500,\"priority\":10}" } ]' WHERE USERNAME = 'admin';
    
  • 关闭H2控制台,重启Keycloak服务,用新密码登录管理员后台。

情况2:使用外部数据库(如MySQL、PostgreSQL)

  • 停止Keycloak服务。
  • 用数据库管理工具(比如MySQL Workbench、pgAdmin)连接到你的外部数据库。
  • 找到user_entity表,执行对应SQL更新密码:

    MySQL示例

    UPDATE user_entity SET credentials = JSON_SET(
      credentials,
      '$[0].value', SHA2('new_password', 256),
      '$[0].secretData', JSON_OBJECT('value', SHA2('new_password', 256), 'salt', '')
    ) WHERE username = 'admin';
    

    PostgreSQL示例

    UPDATE user_entity 
    SET credentials = jsonb_set(
      credentials,
      '{0,value}', to_jsonb(encode(sha256('new_password'::bytea), 'hex')),
      true
    ) || jsonb_set(
      credentials,
      '{0,secretData}', '{"value":"' || encode(sha256('new_password'::bytea), 'hex') || '","salt":""}'::jsonb,
      true
    )
    WHERE username = 'admin';
    
  • 保存更改后,重启Keycloak服务,用新密码登录。

情况3:Docker运行的Keycloak(Windows系统)

  • 停止Keycloak容器:
    docker stop <容器名称或ID>
    
  • 若使用内嵌数据库,可进入容器操作或处理挂载的H2数据卷(参考情况1);若用外部数据库,参考情况2操作。
  • 也可以直接删除原有容器(无数据保留需求时),重新启动并指定新密码:
    docker run -d -p 8080:8080 -e KEYCLOAK_ADMIN=admin -e KEYCLOAK_ADMIN_PASSWORD=new_password quay.io/keycloak/keycloak:latest start-dev
    

内容的提问来源于stack exchange,提问作者Alagusundaram R

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.26 12:01:26