如何解决Mongo Go驱动程序-在启用ssl和加密密钥的连接时给出密钥不匹配错误
尝试从golang应用程序kubernetes pod连接到mongodb服务器时出现以下错误。
错误:tls:私钥与公钥不匹配
我使用的是mongo-go-driver版本1.4.1
密钥是RSA加密的。 ----- BEGIN RSA私钥----- 过程类型:4,已加密 DEK-Info:..
要连接的PFB应用程序代码
m.context,_ = context.WithTimeout(context.Background(),30*time.Second)
certFilePath := <path>
keyPassword := <password>
uri := "mongodb://user:password@<mongoserver>:27017/?authSource=<dbname>&authMechanism=scram-sha-1&connect=direct&ssl=true&sslClientCertificateKeyFile=%s&sslClientCertificateKeyPassword=%s&sslInsecure=true&sslAllowInvalidCertificates=true"
uri = fmt.Sprintf(uri,certFilePath,keyPassword)
log.Println("ConnectDB: creating mongo client new")
clientOptions := []*options.ClientOptions{
options.Client().ApplyURI(uri),//.SetAuth(credential),}
log.Println("ConnectDB: connecting client")
m.client,err = mongo.Connect(m.context,clientOptions...)
if nil != err {
panic(err)
}
使用Robo 3T或Studio 3T连接时,相同的密钥和证书可以正常工作
请帮助我解决密钥不匹配错误。是由于golang驱动程序解密密钥不正确吗?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。