Skip to content

HDDS-14843. Support cluster-wide blacklist on OM#10037

Open
ivandika3 wants to merge 1 commit intoapache:masterfrom
ivandika3:HDDS-14843
Open

HDDS-14843. Support cluster-wide blacklist on OM#10037
ivandika3 wants to merge 1 commit intoapache:masterfrom
ivandika3:HDDS-14843

Conversation

@ivandika3
Copy link
Copy Markdown
Contributor

@ivandika3 ivandika3 commented Apr 3, 2026

What changes were proposed in this pull request?

We have supported an internal user / group blacklist mechanisms to block some anomalous users from destabilizing the cluster for a while. The idea is similar to Ozone admin, but instead of allowing all access, blacklist denies all operations. The configuration is made reconfigurable to allow quick reaction after detection.

We should prefer to set readonly blacklist first before setting blacklist since (re)configuration is local to each OM (and not applied using Ratis), which might cause state divergence. Although some OM request already push the permission check to preExecute (not validateAndUpdateCache), there are still some requests (mostly multi-keys OM requests) still check in validateAndUpdateCache

What is the link to the Apache JIRA

https://issues.apache.org/jira/browse/HDDS-14843

How was this patch tested?

UT.

Clean CI: https://github.com/ivandika3/ozone/actions/runs/23936319511

@ivandika3 ivandika3 marked this pull request as ready for review April 3, 2026 12:57
@ivandika3 ivandika3 self-assigned this Apr 4, 2026
Copy link
Copy Markdown
Contributor

@adoroszlai adoroszlai left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @ivandika3 for sharing the patch.

I would like to refactor OzoneAdmins and OzoneBlacklist, as there already is quite some duplication around this area, and this new class adds more. While it would have been easier before this change, now I think we should do it as a follow-up:

  • refactoring first would require this to be reworked
  • better to have the additional test coverage before refactoring

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

Successfully merging this pull request may close these issues.

2 participants