解决RabbitMq登录时报出Not management user(Login failed)错误

解决RabbitMq登录时报出Not management user(Login failed)错误_第1张图片

Not management user 翻译成中文即为非管理用户非管理用户无法登录管理控制台因而报出这个错误。

虽然我登录的是guest用户因为账号guest具有所有的操作权限当然可以登录管理控制台。

但我在上文中修改guest用户角色为空导致现在无法登录。

使用如下命令查看guest权限

rabbitmqctl list_users

解决RabbitMq登录时报出Not management user(Login failed)错误_第2张图片 

你会看到guest权限为空因为我在上文点击Add User按钮时并没有设置Tags导致guest的用户角色权限为空。

Tags为角色名(对应于下面的administratormonitoringpolicymakermanagement或其他自定义名称)

rabbitmq的用户角色可分为五类超级管理员, 监控者, 策略制定者, 普通管理者以及其他。

  1. 超级管理员(administrator)

可登陆管理控制台(启用management plugin的情况下)可查看所有的信息并且可以对用户策略(policy)进行操作。

  1. 监控者(monitoring)

可登陆管理控制台(启用management plugin的情况下)同时可以查看rabbitmq节点的相关信息(进程数内存使用情况磁盘使用情况等)

  1. 策略制定者(policymaker)

可登陆管理控制台(启用management plugin的情况下), 同时可以对policy进行管理。但无法查看节点的相关信息(上图红框标识的部分)。

administrator的对比administrator能看到这些内容

  1. 普通管理者(management)

仅可登陆管理控制台(启用management plugin的情况下)无法看到节点信息也无法对策略进行管理。

  1. 其他

无法登陆管理控制台通常就是普通的生产者和消费者。

那么我现在有两种解决方案如下所示

  1. 使用rabbitmqctl修改guest角色权限

  2. 新增用户和用户角色

3. 解决问题

3.1 rabbitmqctl修改guest角色权限

  1. 使用如下指令修改guest的角色权限
rabbitmqctl set_user_tags guest administrator

 

  1. 使用指令rabbitmqctl list_users查看guest的角色权限

 解决RabbitMq登录时报出Not management user(Login failed)错误_第3张图片

你可能感兴趣的:(中间件,rabbitmq,分布式)