JBoss添加用户至错误admin realm,如何重置Management域管理员密码?
重置/创建JBoss Management域管理员用户
一、用add-user.sh正确创建Management域用户
直接执行JBoss bin目录下的add-user.sh(Linux/macOS)或add-user.bat(Windows),跟着提示选对用户类型就行:
- 脚本启动后会问用户类型,直接回车选默认的
a) Management User (mgmt-users.properties),这就是对应Management域的用户; - 输入用户名、符合规则的密码(至少8位,包含大小写、数字或特殊字符),确认密码后,选择把用户加入
Administrators组(获得管理员权限); - 最后根据需求选择是否为远程连接添加用户,完成后脚本会自动把用户写入对应属性文件。
二、手动修改属性文件(脚本操作出问题时备用)
Management域的用户、组信息固定存在以下位置:
- 独立模式:
standalone/configuration/mgmt-users.properties(存储用户名和加密密码)、standalone/configuration/mgmt-groups.properties(存储用户所属组) - 域模式:
domain/configuration/mgmt-users.properties、domain/configuration/mgmt-groups.properties
手动创建步骤:
- 清空这两个文件里之前错加的无关条目;
- 在JBoss bin目录下执行命令生成密码哈希:
复制输出的哈希字符串(格式类似./jboss-cli.sh --command="hash-password --password=你的新密码"$2a$10$xxxxxx); - 打开
mgmt-users.properties,添加一行:用户名=哈希值,比如admin=$2a$10$xxxxxx; - 打开
mgmt-groups.properties,添加一行:用户名=Administrators,赋予用户管理员权限。
三、确认Management域的配置(默认无需修改)
JBoss默认已配置好Management域,你可以打开standalone.xml或domain.xml检查<security-realms>节点,里面应该有类似配置:
<security-realm name="ManagementRealm"> <authentication> <local default-user="$local" allowed-users="*" skip-group-loading="true"/> <properties path="mgmt-users.properties" relative-to="jboss.server.config.dir"/> </authentication> <authorization map-groups-to-roles="false"> <properties path="mgmt-groups.properties" relative-to="jboss.server.config.dir"/> </authorization> </security-realm>
这段配置就是指定用mgmt-users.properties和mgmt-groups.properties作为Management域的用户来源,默认不用改。
四、重启JBoss生效
不管用脚本还是手动修改文件,都要重启JBoss服务,之后就能用新的Management域用户登录9990端口的管理控制台了。
内容的提问来源于stack exchange,提问作者Joe D
相关产品推荐
相关产品推荐

