如何重置rabbitmq管理的用户

nxowjjhe  于 2022-11-08  发布在  RabbitMQ
关注(0)|答案(5)|浏览(309)

使用rabbitmq,我们可以安装管理插件。然后我们通过浏览器使用http://localhost:55672/使用guest:guest访问。问题是,我不能登录了,因为我更改了密码,输入了空白的角色。
有没有办法重置rabbitmq管理的用户?

vhmi4jdf

vhmi4jdf1#

您可以使用rabbitmqctl访问用户管理,并使用以下命令:

add_user {username} {password}

或者更优选地,可以编辑现有用户,或者通过以下方式设置新用户的许可:

set_permissions [-p vhostpath] {user} {conf} {write} {read}

例如,使用以下命令:(如果您希望能够登录到UI控制台,并且您的程序能够在不遇到任何权限问题的情况下工作,则即使在创建新用户时,也必须执行这三个步骤)

rabbitmqctl add_user newadmin s0m3p4ssw0rd
rabbitmqctl set_user_tags newadmin administrator
rabbitmqctl set_permissions -p / newadmin ".*" ".*" ".*"

...以创建对默认/ vhost具有完全访问权限的新管理员用户。
您可以在RabbitMQ homepage上找到所有这些,更具体地说,在这个page

ds97pgxw

ds97pgxw2#

我发现的最简单的方法是使用此命令为RabbitMQ中的任何用户重置密码

rabbitmqctl change_password <USERNAME> <NEWPASSWORD>
wfsdck30

wfsdck303#

这是专门用于活动测试的,但也可以应用于其他API。

rabbitmqctl add_vhost statuscheckvhost
rabbitmqctl add_user heartbeat alive
rabbitmqctl set_permissions -p statuscheckvhost heartbeat ".*" ".*" ".*"
rabbitmqctl set_user_tags heartbeat management

curl -i -u heartbeat:alive http://127.0.0.1:55672/api/aliveness-test/statuscheckvhost
HTTP/1.1 200 OK
Server: MochiWeb/1.1 WebMachine/1.9.0 (someone had painted it blue)
Date: Thu, 21 Feb 2013 22:20:10 GMT
Content-Type: application/json
Content-Length: 15
Cache-Control: no-cache
{"status":"ok"}
7fyelxc5

7fyelxc54#

如果您在Docker容器上有RabbitMQ,您可以先

docker exec -it <YOUR_CONTAINER> /bin/bash

那你就做

rabbitmqctl change_password <USERNAME> <NEWPASSWORD>

如@ samtridder指出

eanckbw9

eanckbw95#

我能够在这篇文章后重置。非常感谢。
rabbitmqctl add_user测试密码rabbitmqctl set_user_tags测试管理员
然后我进入浏览器控制台,用这个测试帐户登录。从那里我可以重置管理员帐户和访客帐户的密码。

相关问题