lasdf1234 opened a new issue, #13857:
URL: https://github.com/apache/gravitino/issues/13857

   ### Version
   
   main branch
   
   ### Describe what's wrong
   
   Job get/list/run/cancel API responses include the resolved 
`runtimeJobTemplate`. After placeholder substitution from `jobConf`, sensitive 
values (passwords, tokens, access keys, OAuth credentials, and nested JSON maps 
such as `updater_options` / `spark_conf`) are returned in clear text.
   
   Catalog/entity property APIs already mask sensitive-named keys via 
`SecretPropertyUtils` / `HiddenPropertyMaskUtils`, but the job runtime template 
path did not.
   
   ### Error message and/or stacktrace
   
   N/A — credentials appear as plaintext string values in the JSON response 
(for example `environments.AUTH_PASSWORD`, `configs.spark.*.secret.key`, or 
nested `password` / `oauth_token` inside `customFields.updater_options`).
   
   ### How to reproduce
   
   1. Register a Spark/Shell job template with placeholders for credentials in 
`environments`, `customFields`, or `configs`.
   2. Run the job with a `jobConf` that supplies plaintext secrets (or nested 
JSON containing secrets).
   3. Call get/list job and inspect `runtimeJobTemplate` — sensitive values are 
visible in clear text.
   
   ### Additional context
   
   Related enterprise report: #2550 (credentials in clear text on job API).
   
   Default sensitive key keywords (same as property masking): `secret`, 
`password`, `token`, `credential`, `access`, `account` (overridable via 
`gravitino.sensitiveKeyKeywords`).


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