MongoDB工具 >MongoDB Kubernetes运营商 >部署MongoDB数据库资源 >保护数据库资源 > 使用X.509的安全客户端身份验证
MongoDB Enterprise Kubernetes Operator可以使用X.509证书对MongoDB部署的客户端应用程序进行身份验证。
本指南指导您如何配置:
注意
您无法在Kubernetes集群中保护MongoDB的独立实例的安全。
弃用通知
不建议使用Kubernetes Operator 自动生成TLS证书,并且在以后的版本中将删除该证书。
对于生产环境,必须按照以下过程中的说明,从您自己的CA提供证书。
在使用TLS加密保护MongoDB部署安全之前,请完成以下步骤:
在项目级别启用X.509身份验证会将所有代理配置为在与MongoDB部署进行通信时使用X.509客户端身份验证。
X.509客户端身份验证需要以下条件之一:
在使用TLS加密保护副本集之前,请完成以下步骤:
为以下每个组件创建一个PEM文件:
PEM文件用途 | 将文件另存为... |
---|---|
您的自定义CA | ca-pem |
副本集的每个成员 | <metadata.name>-<X>-pem |
要创建PEM文件,请连接TLS证书和私钥。PEM文件的示例类似于:
关于示例文件名
<metadata.name>
为的值
metadata.name
。<Y>
群集替换为从0开始的数字。<X>
为分片或副本集的成员。-pem
和没有 .pem
。这些文件不应具有文件扩展名。要检查MongoDB Kubernetes资源的状态,请调用以下命令:
该-w
标志表示“手表”。设置了“监视”标志后,当某些更改发生时,输出将立即刷新,直到状态阶段达到该Running
状态为止。
请参阅对Kubernetes Operator进行故障排除以获取有关资源部署状态的信息。
在使用TLS加密保护副本集之前,请完成以下步骤:
为以下每个组件创建一个PEM文件:
PEM文件用途 | 将文件另存为... |
---|---|
您的自定义CA | ca-pem |
分片群集中的每个分片 | <metadata.name>-<Y>-<X>-pem |
配置服务器副本集的每个成员 | <metadata.name>-config-<X>-pem |
每 mongos |
<metadata.name>-mongos-<X>-pem |
关于示例文件名
<metadata.name>
为的值
metadata.name
。<Y>
群集替换为从0开始的数字。<X>
为分片或副本集的成员。-pem
和没有 .pem
。这些文件不应具有文件扩展名。Kubernetes操作员创建MongoDB资源,并请求Kubernetes CA批准数据库主机的证书。运行以下命令来验证证书是否正在等待批准:
在status
输出的字段应类似于以下内容:
如果看不到status.message
以上内容,请参阅
对Kubernetes Operator进行故障排除以帮助诊断问题。
要检查MongoDB Kubernetes资源的状态,请调用以下命令:
该-w
标志表示“手表”。设置了“监视”标志后,当某些更改发生时,输出将立即刷新,直到状态阶段达到该Running
状态为止。
请参阅对Kubernetes Operator进行故障排除以获取有关资源部署状态的信息。