4.2.2. 用户身份验证
使用 KafkaUser.spec
中的 身份验证
属性配置用户身份验证。为用户启用的身份验证机制使用 type
字段指定。
支持的验证机制:
- TLS 客户端身份验证
- SCRAM-SHA-512 验证
如果没有指定身份验证机制,User Operator 不会创建用户或其凭证。
4.2.2.1. TLS 客户端身份验证
要使用 TLS 客户端身份验证,请将 type
字段设置为 tls
。
启用了 TLS 客户端身份验证的 KafkaUser
示例
apiVersion: kafka.strimzi.io/v1beta1 kind: KafkaUser metadata: name: my-user labels: strimzi.io/cluster: my-cluster spec: authentication: type: tls # ...
当 User Operator 创建用户时,它会创建一个名称与 KafkaUser
资源相同的新 Secret。Secret 包含用于 TLS 客户端身份验证的私钥和公钥。公钥包含在用户证书中,由客户端证书颁发机构(CA)签名。
所有键均采用 X.509 格式。
secret 以 PEM 和 PKCS #12 格式提供私钥和证书。
有关保护 Kafka 与 Secret 的通信的更多信息,请参阅 第 11 章 管理 TLS 证书。
带有用户凭证的 Secret
示例
apiVersion: v1 kind: Secret metadata: name: my-user labels: strimzi.io/kind: KafkaUser strimzi.io/cluster: my-cluster type: Opaque data: ca.crt: # Public key of the client CA user.crt: # User certificate that contains the public key of the user user.key: # Private key of the user user.p12: # PKCS #12 archive file for storing certificates and keys user.password: # Password for protecting the PKCS #12 archive file