Zurücksetzen des Benutzers für die Verwaltung von rabbitmq

81

Mit rabbitmq können wir das Management Plugin installieren. Dann greifen wir über den Browser http://localhost:55672/mit guest: guest zu. Das Problem ist, ich kann mich nicht mehr anmelden, weil ich das Passwort geändert und leer für die Rolle eingegeben habe.

Gibt es eine Möglichkeit, den Benutzer für die Verwaltung von rabbitmq zurückzusetzen?

Superbiji
quelle

Antworten:

172

Sie können auf die Benutzerverwaltung zugreifen rabbitmqctlund den folgenden Befehl verwenden:

add_user {username} {password}

oder bevorzugter können Sie einen vorhandenen Benutzer bearbeiten oder die Berechtigungen für den neuen Benutzer festlegen mit:

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

Verwenden Sie beispielsweise die folgenden Befehle: (Es ist wichtig, diese drei Schritte auch beim Erstellen eines neuen Benutzers auszuführen, wenn Sie sich an der UI-Konsole anmelden möchten und Ihre Programme ohne Berechtigungsprobleme funktionieren sollen.)

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

... um einen neuen Administrator mit vollem Zugriff auf den Standard / vhost zu erstellen.

All dies finden Sie auf der RabbitMQ-Homepage und insbesondere auf dieser Seite

Daniel Figueroa
quelle
8
danke, ich versuche dies, um die Berechtigung festzulegen: rabbitmqctl set_user_tags khad Administrator
Superbiji
1
@ Superbiji Sie sollten erwägen, diesen Kommentar in eine Antwort umzuwandeln. Ich weiß, dass es alt ist, aber das war die Lösung, die für mich funktioniert hat.
Alexn
2
set_permissions -p / newadmin ".*" ".*" ".*"das hat einwandfrei funktioniert !! danke
ashim888
Sie sollten als root angemeldet sein oder "sudo"
XIII
23

Dies ist speziell für den Lebendigkeitstest gedacht, kann aber auch für andere Apis gelten

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"}
Meghal Gosalia
quelle
20

Der einfachste Weg, den ich gefunden habe, besteht darin, mit diesem Befehl das Kennwort für jeden Benutzer in RabbitMQ zurückzusetzen

rabbitmqctl change_password <USERNAME> <NEWPASSWORD>
Samtoddler
quelle