撤销相互TLS身份验证中的SSL证书

时间:2019-05-29 09:33:36

标签: ssl kubernetes ssl-certificate kubernetes-ingress mutual-authentication

我正在尝试为Kubernetes集群中部署的应用程序启用基于Mutual TLS的身份验证。

用例:

  1. 希望仅对具有受信任的客户端证书的用户限制对我们应用程序的访问。
  2. 基于某些情况/条件,我还想撤销特定用户的证书,以使该用户不再能够使用其证书访问该应用程序。

我尝试通过添加以下注释在kuberentes入口控制器(基于nginx)上设置Mutual TLS。

    nginx.ingress.kubernetes.io/auth-tls-verify-client: "on"
    nginx.ingress.kubernetes.io/auth-tls-secret: "ca-cert"

ca-cert是kubernetes机密,其中包含用于颁发客户端证书的CA证书。这样,Ingress就会针对ca-cert验证作为请求的一部分发送的客户端证书。

这对于ca-cert签名的所有客户端证书都非常有效。我正在尝试提出证书吊销过程的解决方案。在这方面需要建议。

是否可以信任单个客户端证书而不是入口中的CA证书?这将帮助我们撤消各个客户证书。

1 个答案:

答案 0 :(得分:0)

如果我对您的理解正确,则需要使用Nginx证书吊销列表。 应该使用标准的Nginx配置(以标准格式创建,添加到文件,从Ingress更新文件)来完成此操作。 关于此的更多details / tutorials

请让我知道是否有帮助。