• RabbitMQ 权限分离&HA操作文档


    概要

        默认情况下,使用帐号guest帐号登陆MQ,所有用户的queue信息,全部创建在根目录/的virtual host下,而这样,就会导致,任一用户登录后,都能看到其他用户的queue信息。

        针对以上情况,就需要各个用户的权限进行分离。

    一、配置步骤(假设想要分离的用户为colander,即,使用该用户登陆后,只能看到该用户对应的queue)

    首先登录MQ HttpAPI环境,以colander为例,使用guest/guest登录地址 : http://192.168.1.26:15672

    1. 增加colander用户

    • 点击 admin,然后选择右侧的users节点
    • 点击add user,输入:
                        Username:colander
                        Password:123
                                       123
                              Tags:administrator(此处tags是为了兼容低版本)
    • 点击 Add User按钮,添加用户成功。 

    2. 增加colander用户的virtual host

    • 点击admin ,然后选择右侧的Virtual host节点
    • 点击add virtual host,输入:
                       Name:/colander
    • 点击 add virtural host按钮,添加成功。

    3. 给/colander virtual host设置访问用户

    • 点击/colander
    • 选择:
                          User:colander
           Configre regexp:.*
               Write regexp:.*
                Read regexp:.*
    • 点击 Set permission按钮, 设置成功。

    4. 给/colander 设置Policies

    • 点击admin,然后选择右侧的Policies
    • 下拉框选择/colander节点
                    Virtual host:/colander
                           Name:colander_ha
                         Pattern:^colander.
                      Definition:hamode=all
    • 点击 Add policy按钮, 设置成功。

    5. 删除colander用户下的所有与colander有关的queue

    6. 删除colander用户下的所有与colander有关的exchange

    二、权限验证:
     
    1. 使用colander用户登录,看看是否只能看到colander用户下的queue相关信息。
    2. 使用guest用户,看看是否无法看到colander用户下的queue信息
    3. 由于设置了HA模式,所以需要查看是否支持HA

    PS:cyberlocker可以不需要重复以上步骤创建。因为cyberlocker默认虚拟host为"/" 而“/”是没有权限查看/colander用户下的queue信息的

  • 相关阅读:
    每日随笔
    每日随笔
    每日随笔
    JavaSE 类加载机制
    MySQL 索引
    JavaSE 线程的生命周期
    JVM堆内存(heap)详解
    Redis 学习笔记(三)哨兵模式配置高可用和集群
    sqlserver数据库连接数相关问题
    多项式多点求值
  • 原文地址:https://www.cnblogs.com/ExMan/p/10268493.html
Copyright © 2020-2023  润新知