我正在运行一个 webAPI 应用程序,它实际上使用 KubernetesDotNet [或其他客户端]连接到远程 Kubernetes 集群 API。
本地工作,但是一旦我在服务器上发布,我就开始接收
底层连接已关闭:无法为 SSL/TLS 安全通道建立信任关系
连接是通过读取 .pfx 文件建立的。
IKubernetesClient k8sClient = new SslClientConfiguration
{
ClusterUri = new Uri(
"https://remotekubernetes.hcp.eastus.azmk8s.io"),
Certificate = new X509Certificate2(
HostingEnvironment.ApplicationPhysicalPath + "certificate.pfx",
"12345608765422",
X509KeyStorageFlags.UserKeySet)
}.CreateClient( AuthType.SSLAuth);
该证书我使用.kube/config
文件信息得到它,不过我也在本地测试过这个
IKubernetesClient k8sClient = new KubeConfigClientConfiguration(
HostingEnvironment.ApplicationPhysicalPath + "config"
).CreateClient(AuthType.SSLAuth);
访问 and 的副本.kube/config
也可以正常工作。
问题是,一旦我发布了 webApi 应用程序,我就会开始收到 SSL 错误。
如何解决这个问题?