Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Lock operator policies from HTTP API #7131

Closed
illotum opened this issue Jan 31, 2023 · 3 comments
Closed

Lock operator policies from HTTP API #7131

illotum opened this issue Jan 31, 2023 · 3 comments
Milestone

Comments

@illotum
Copy link
Collaborator

illotum commented Jan 31, 2023

Since in certain environments the infrastructure operators do not get accounts in RabbitMQ, I'd like to add a config switch that prohibits operator policies from being changed via HTTP API. Tentatively prohibit_remote_operator_policies=true

Broker will return a well-formed error to PUT /api/operator-policies, and the only way to set them becomes by accessing the host: either via rabbitmqctl, or #6687.

Perhaps extra work may be done to hide operator policies from 'policymaker's in the web console as well.


I briefly considered adding instead a new type of policies, say "global", to enforce cross-vhost limits. This feels a bit redundant, but I'm open to all arguments.

@michaelklishin
Copy link
Member

Disabling this kind of feature is fine.

operator_policies.enabled = (boolean) is what I'd use.

@illotum
Copy link
Collaborator Author

illotum commented Feb 1, 2023

How about then migrating default_policies.operator into operator_policies.default? With a bit of data transformation cuttlefish allows both mappings to co-exist.

Edit.

Or the opposite, since it's HTTP API, call the setting management.can_set_operator_policies instead? So far this one is my favourite.

@michaelklishin
Copy link
Member

michaelklishin commented Feb 7, 2023

Addressed in #7165, #7202.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants