sanghyeok An created KAFKA-21008:
------------------------------------

             Summary: Consider allowing record headers to be filtered or masked 
before persistence in Kafka Streams state stores
                 Key: KAFKA-21008
                 URL: https://issues.apache.org/jira/browse/KAFKA-21008
             Project: Kafka
          Issue Type: Improvement
            Reporter: sanghyeok An
            Assignee: sanghyeok An


Kafka Streams header-aware state stores introduced by KIP-1271 can persist 
record headers together with state values and propagate them through state 
store changelogs.

 

Record headers may contain application-level sensitive information, such as 
credentials, tokens, personally identifiable information, or request metadata 
that should not be retained at rest.

 

Currently, Kafka Streams does not provide a built-in mechanism to filter, 
remove, or mask selected headers before they are written to a header-aware 
state store. Applications must sanitize headers manually before every stateful 
operator, which is error-prone and may also modify the headers observed by 
downstream processors.

 

Kafka Streams should provide an opt-in mechanism to filter or transform the 
copy of the headers that is persisted by header-aware state stores.

 

The mechanism should:
 *  Allow selected headers to be removed or their values to be masked.
 * Apply consistently to both local state and state-store changelog records.
 * Avoid mutating the headers of the in-flight input record.
 * Preserve the current behavior when no filtering or masking policy is 
configured.
 * Ensure that restored state contains the same sanitized headers that were 
written to the local store.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to