当前位置:   article > 正文

RabbitMQ 集成 KeyCloak 认证_rabbitmq认证

rabbitmq认证

RabbitMQ 集成 KeyCloak 认证

环境准备

RabbitMQ 3.10.+ 版本

集成步骤

启动RabbitMQ,这里我使用的是 docker 的方式
docker network create rabbitmq

docker run -d --hostname rabbitmq1-3.11.2 --name rabbitmq1-3.10.19 --network rabbitmq -p 5671:5672 -p 15671:15672 -e RABBITMQ_ERLANG_COOKIE="javaboy_rabbitmq_cookie" -e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=123456 rabbitmq:3.11.2-management-alpine
  • 1
  • 2
  • 3
进入 RabbitMQ 控制台启动 Oauth2 插件
rabbitmq-plugins enable rabbitmq_auth_backend_oauth2
  • 1
登录进入 KeyCloak 系统,创建 rabbitmq realm

在这里插入图片描述

在 RabbitMQ realm 下创建 rabbitmq-admin 用户

在这里插入图片描述
在这里插入图片描述

设置密码

在这里插入图片描述

创建客户端 rabbitmq-client

在这里插入图片描述
在这里插入图片描述

创建客户端 scopes

在这里插入图片描述

将创建的 scopes 添加到 rabbitmq-client

在这里插入图片描述

记住 secret

在这里插入图片描述

在/etc/rabbitmq下创建 advanced.config 配置文件,修改相应的配置信息。保存并重启 RabbitMQ。
[
  {rabbit, [
    {auth_backends, [rabbit_auth_backend_oauth2]}
  ]},
   {rabbitmq_management, [
      {oauth_enabled, true},
      {oauth_client_id, "rabbitmq-client"},
      {oauth_client_secret, "59553098-22f4-4365-abea-4a3210ed24ec"},
      {oauth_provider_url, "http://192.168.100.67:18080/auth/realms/rabbitmq"}
  ]},
  {rabbitmq_amqp1_0, [
    {default_user, none}
  ]},
  {rabbitmq_auth_backend_oauth2, [
    {resource_server_id, <<"rabbitmq">>},
    {preferred_username_claims, [<<"preferred_username">>,<<"username">>,<<"user_name">>]},
    {key_config, [
      {jwks_url, <<"http://192.168.100.67:18080/auth/realms/rabbitmq/protocol/openid-connect/certs">>}
    ]}
  ]}
].
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
打开 RabbitMQ 管理页面,应显示一下内容

在这里插入图片描述

点击 click here to login, 跳转到 KeyCloak 登录页面,输入账号密码,点击登录。

在这里插入图片描述

成功登录的话,会返 RabbitMQ 管理页面。可以看到是使用的 Oauth2 认证的方式。

在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/喵喵爱编程/article/detail/798565
推荐阅读
相关标签
  

闽ICP备14008679号