Bootstrap

rabbitMQ数据隔离

用户管理

点击Admin选项卡,就会呈现rabbitMQ控制台的用户管理界面

  • Name:sde,也就是用户名
  • Tags:administrator,说明sde用户是超级管理员,拥有所有权限
  • Can access virtual host: /,可以访问的virtual host,这里的/是默认的virtual host

对于中小型企业而言,我们通常只会搭建一套MQ集群,公司内多个不同的项目同时使用。为了避免各个项目的互相干扰,我们会利用virtual host的隔离特性,将不同项目进行隔离。一般要做的就是两件事。

  • 给每个项目创建独立的运维账号,将管理权限分离。
  • 给每个项目创建不同的virtual host,将每个项目的数据隔离。

比如给我们今天学习的案例创建一个新的用户名,命名为sundaoen,密码:123

创建新用户

你会发现此时hmall用户没有任何Virtual host的访问权限:

不用着急,接下类我们就慢慢授权。

Virtual host 虚拟主机

我们先退出登录

切换到刚刚创建的sundaoen用户登录,密码为123,然后点击Virtual Hosts菜单,进入virtual host管理页:

可以看到目前只有一个默认的virtual host,名字为 /。

我们可以给案例项目创建一个单独的virtual host,而不是使用默认的/;新建起名为 /sde

创建完成后如图:

由于我们是登录hmall账户后创建的virtual host,因此回到users菜单,你会发现当前用户已经具备了对/sde这个virtual host的访问权限了:

此时,点击页面右上角的virtual host下拉菜单,切换virtual host为 /sde:

然后再次查看queues选项卡,会发现之前的队列已经看不到了:

这就是基于virtual host的隔离效果。

;