andyhuangdev opened a new pull request, #11820:
URL: https://github.com/apache/ozone/pull/11820

   ## What changes were proposed in this pull request?
   
   Tenant admin checks now skip missing entries in tenantAccessIdTable and 
continue checking the user's remaining accessIds.
   
   The check reads principalToAccessIdsTable and tenantAccessIdTable without a 
shared lock. A concurrent revoke can remove an accessId after the principal row 
has been read. Previously, encountering that missing entry immediately returned 
false, potentially rejecting a request even though another accessId still 
granted admin privileges for the requested tenant.
   
   The change preserves the existing tenant, admin, and delegated admin checks. 
A regression test ensures a missing accessId encountered first does not hide a 
valid admin entry, grant delegated admin privileges, or grant access to another 
tenant.
   
   ## What is the link to the Apache JIRA
   
   [HDDS-17196](https://issues.apache.org/jira/browse/HDDS-17196)
   
   ## How was this patch tested?
   
   The regression test was run before the fix and failed as expected. After the 
fix, all 24 tests in the following suites passed with a clean module build:
   
   mvn -pl :ozone-manager clean test \
     '-Dtest=TestOMMultiTenantManagerImpl,TestOMTenant*,TestS3GetSecretRequest' 
\
     -DskipShade -DskipRecon -DskipDocs
   
   Checkstyle and git diff --check also passed.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to