RabbitMQ 4.1.0 Okta Integration monitoring role has admin privileges #13773
-
Community Support Policy
RabbitMQ version used4.1.0 Erlang version used27.3.x Operating system (distribution) useddocker How is RabbitMQ deployed?Community Docker image rabbitmq-diagnostics status outputSee https://www.rabbitmq.com/docs/cli to learn how to use rabbitmq-diagnostics
Logs from node 1 (with sensitive values edited out)See https://www.rabbitmq.com/docs/logging to learn how to collect logs
Logs from node 2 (if applicable, with sensitive values edited out)See https://www.rabbitmq.com/docs/logging to learn how to collect logs
Logs from node 3 (if applicable, with sensitive values edited out)See https://www.rabbitmq.com/docs/logging to learn how to collect logs
rabbitmq.confSee https://www.rabbitmq.com/docs/configure#config-location to learn how to find rabbitmq.conf file location
Steps to deploy RabbitMQ clusterdocker run Steps to reproduce the behavior in question
advanced.configSee https://www.rabbitmq.com/docs/configure#config-location to learn how to find advanced.config file location
Application code# PASTE CODE HERE, BETWEEN BACKTICKS Kubernetes deployment file# Relevant parts of K8S deployment that demonstrate how RabbitMQ is deployed
# PASTE YAML HERE, BETWEEN BACKTICKS What problem are you trying to solve?I have setup Okta claims for "role" claim to have either "admin" or "monitoring" values depending on the user and have configured [email protected] with admin role and [email protected] with monitoring role. I am able to login and receive valid JWT tokens from Okta. When I login as rabbitmq-monitoring user, I get correct JWT token (shown below) with role claim having "monitoring" value. However, after logging into the management console, this user has all Admin privileges. This user can create and delete queues, vhosts etc. Is there anything wrong with my configuration? I have also deleted the write and configure permissions for monitoring user in advanced.config but has no effect { |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment
-
@samragu the ability to declare queues, exchanges, bindings ultimately comes from the permissions a user has, not its tag. Certain tags are necessary for certain management UI and HTTP API operations but tags control nothing outside of the management plugin, and specifically around authN and authZ chains. Users labelled as We will not troubleshoot OAuth 2 setups for non-paying users. Besides extensive documentation that covers multiple IDPs there are examples for multiple IDPs and a troubleshooting guide. |
Beta Was this translation helpful? Give feedback.
@samragu the ability to declare queues, exchanges, bindings ultimately comes from the permissions a user has, not its tag. Certain tags are necessary for certain management UI and HTTP API operations but tags control nothing outside of the management plugin, and specifically around authN and authZ chains.
Users labelled as
monitoring
do not have access to certain management UI features but they can have sufficient permissions to modify the topology, consume messages, and so on.We will not troubleshoot OAuth 2 setups for non-paying users.
Besides extensive documentation that covers multiple IDPs there are examples for multiple IDPs and a troubleshooting guide.