Strimzi without self-managed CA certificates #11005
Replies: 3 comments 2 replies
-
For the Cluster CA, Strimzi uses the CA to generate the server certificates for the various components. For that, we need you to provide a CA including its private key as that is needed to issue the server certificates. That said, if you use some complex setup with CA hierarchy consisting of multiple CAs, you do not need to provide the private key for each of the CAs. Just for the CA that should be used to sign the certificates. So if you have hierarchy of 3 CAs - Root CA -> Intermediate CA -> Cluster CA - you need to provide the private key only for the Cluster CA. For the Clients CA, the CA is used to sign the user certificates. If you want to use the User Operator to issue user certificates, you need to provide the CA with the private key (again, only for the Clients CA, not for any Root CA that signed the Clients CA). If you do not plan to issue any user certificates through the User Operator, you can provide something dummy for the private key and only use the real public key. |
Beta Was this translation helpful? Give feedback.
-
Our organization would not issue a CA certificate with hierarchy that includes root CA, because everything signed by this cert, would also be also trusted by the rest of the organization outside of kafka environment. This is especially considered as a threat since the cluster CA must contain valid keys in order to sign certs for brokers.
But with recommended setup everyone with access to strimzi namespace secrets (i.e. kafka admin), could potentionally generate certificates valid outside of the cluster using cluster CA keys. I wonder what is the best practice, how other organizations approach this?
|
Beta Was this translation helpful? Give feedback.
-
Beta Was this translation helpful? Give feedback.
-
As of this moment Strimzi support providing custom CA, i.e.
These certificates are expected to be CA:True
But our internal security policy prevents us from granting Strimzi or anyone else the private key from CA certification chain that includes our Root and intermediate CA. Why does it need it? We just want strimzi to be able to validate signed certificated, which we would prefer to provide by our own to each cluster member (zoo, brokers..) as well as to each client. Is this achieveable/configurable in Strimzi?
Our expectation is, that for example if Strimzi support providing custom clients certificates along with external-tls authentication, it should provide an option to run everything using CA managed by us, not by Strimzi itself.
Beta Was this translation helpful? Give feedback.
All reactions