GRPC C++如何在没有像java那样的任何验证的情况下信任所有X.509证书



Java可以通过方法创建信任管理器所有证书

SSLContext sc = SSLContext.getInstance("TLS");
sc.init(null,  new TrustManager[] { new TrustAllCerts() }, new SecureRandom());

如何在GRPC C++代码中做,我搜索了很多方法做,但都失败了。知道吗?

在URL中如何使C++客户端在没有任何验证的情况下信任所有X.509证书(如在Java中(,告诉grpc C++不支持此功能,这是真的吗?如果支持如何做,请给出一些建议并显示代码。感谢

使用较新的TLS API,应该可以使用以下内容:

auto Connect(std::string address) {
::grpc::experimental::TlsChannelCredentialsOptions authOptions;
authOptions.set_verify_server_certs(false);
//authOptions.set_certificate_verifier(fancy_verifier);
return ::grpc::CreateChannel(
address,
::grpc::experimental::TlsCredentials(authOptions)
);
}

这个API是实验性的,也就是说,不稳定——它在gRPC库版本之间变化很大。

最新更新