youngkermit8-coder opened a new issue, #1692:
URL: https://github.com/apache/rocketmq-dashboard/issues/1692

   ## Security bug
   
   The two administrator-only credential reveal endpoints return plaintext 
access/secret keys in ordinary GET responses without `Cache-Control: no-store`:
   
   - `GET /api/acl/users/{id}/credentials`
   - `GET /api/cloud-credentials/{id}/credentials`
   
   Without an explicit no-store directive, browsers and intermediary caches are 
permitted to retain these highly sensitive responses. Authentication and 
authorization restrict who can request them, but they do not prevent a 
previously authorized response from being written to a cache.
   
   ## Reproduction
   
   Focused MockMvc tests on current `rocketmq-studio` call both endpoints and 
inspect the response headers. Both return HTTP 200 with plaintext credential 
fields and no `Cache-Control` header.
   
   ## Expected behavior
   
   Every response that exposes stored credentials must include `Cache-Control: 
no-store`, matching the existing treatment of authentication status responses.
   
   ## Proposed scope
   
   - return no-store `ResponseEntity` responses from both credential reveal 
handlers;
   - keep response bodies and endpoint URLs backward compatible;
   - add controller regressions for both endpoints.
   
   ## Duplicate check
   
   Searched open and closed issues and pull requests for credential response 
caching, `Cache-Control`, `no-store`, browser cache, ACL secrets, and cloud 
credential reveal. No matching contribution was found.
   


-- 
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]

Reply via email to