Оба ваших вопроса являются своего рода указанием на права / шифрование / токенизацию для каждого поля.Это не поддерживается по умолчанию в ядре Kafka, но может быть реализовано у производителей / потребителей, если у вас есть знания и инфраструктура.
Для вопроса 1 вы бы токенизировали / шифровали любые поля и только клиенты с правильнымиключи могут расшифровать полезную нагрузку.
Для вопроса 2 вы должны зашифровать всю полезную нагрузку записи, возможно, используя заголовки Kafka для определения пары ключей, необходимой для расшифровки данных.
В обоих случаях вам понадобится некоторая система управления ключами, чтобы производители и потребители имели доступ к нужным им ключам, и вам нужно было записывать свои собственные процессы шифрования / дешифрования на клиентах.Я бы реализовал это в сериализаторе / десериализаторе, чтобы сделать его простым.
Если вы не хотите делать все это, лучше всего разделить доступ к данным с помощью списков ACL, применяемых к темам.