Доступ к публикации очереди RabbitMQ отклонен - PullRequest
0 голосов
/ 07 января 2019

Настройка разрешения для пользователя разрешать публикацию только в определенной очереди Q1

Разрешение

Настройка: ""

Запись: ^ (Q1) | (amqp.default) $

Читайте: ""

Используемый протокол: STOMP

Версия RMQ: 3.6.X

Доступ запрещен при публикации в Q1 с использованием вышеуказанных разрешений.

Если для параметра «Настроить» задано значение ^ (Q1) $ , оно работает без проблем. Но настройка разрешения конфигурации также позволит пользователю выполнять операции queue.delete и queue.declare на Q1 .

Случай: создайте очередь из управления бэкэндом / RMQ, чтобы клиенты stomp могли публиковать в ней данные через прямой обмен amqp.default и ключ маршрутизации в качестве имени очереди. Таким образом, у этого клиента есть только разрешение на запись в очередь без разрешения на настройку или чтение

Что было бы лучшим решением для того же, если бы пользователю требовалось только публиковать в очереди, но не читать или настраивать очередь?

Ответы [ 2 ]

0 голосов
/ 09 января 2019

STOMP протокол требует разрешения на настройку, поэтому пришлось придумать другой подход. ( RabbitMQ code )

Создан обмен E1 и предоставлен пользователю с запись разрешение

Очередь связывания Q1 с E1 , поэтому каждое сообщение, опубликованное на E1 , направляется на Q1

В этом подходе клиенту STOMP требуются только разрешения на запись для публикации для обмена E1 без разрешения на чтение или настройку

0 голосов
/ 07 января 2019

Во-первых, помните, что вы публикуете на биржах в RabbitMQ, а не в очередях. Затем прочитайте эту таблицу , чтобы определить, как разрешение на настройку, запись и чтение применяется к операциям, которые вы хотите выполнить.

Наконец, поскольку используется плагин STOMP, пользователь должен иметь разрешение configure, чтобы иметь возможность создавать очередь ответов. Это связано с тем, как STOMP реализован в RabbitMQ ( код ).


ПРИМЕЧАНИЕ: команда RabbitMQ отслеживает список рассылки rabbitmq-users и только иногда отвечает на вопросы о StackOverflow.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...