在docker中启用ssl的情况下运行ASP.NET Core 2.1微服务

时间:2018-09-19 13:21:55

标签: c# asp.net ssl .net-core ssl-certificate

我正在VS.NET 2017中处理一堆微服务,所有这些都用启用SSL的ASP.NET Core(2.1)编写。我的项目就是这样 -客户端项目(运行Angular) -API网关项目(使用Ocelot) -微服务 -微服务 -微服务 -IdentityServer4

所有项目都运行asp.net core 2.1,并使用自签名证书启用了SSL。现在,当我运行所有本地主机时,一切都很好。但是,如果我开始在容器中运行东西,则证书开始成为问题。

只要我调用网关微服务,我就可以使用身份服务器,总线登录,它显示:

  

根据验证步骤,远程证书无效

我发现在docker中运行时证书的CN名称(或DNS名称)与主机名不匹配,因此我创建了一个新证书,其中包含DNS名称localhost,我的计算机的IP和所有主机名。 docker容器。

有一个更改,系统可以识别“多个主机名”,但是证书仍然无效。这给我留下了一个问题,即由于证书问题,微服务基本上不能相互通信。这听起来对某人熟悉吗?我该怎么办?

由于评论mjwillis而更新 我用5个dns名称(本地主机,工作站的ip,keeszapi,keeszconnect和keeszgame)创建了一个证书。 keeszapi,keeszconnect和keeszgame是docker容器的名称,因此是docker network 中的主机名。

为什么我不使用“让我们加密”,主要是因为我对这些工具不熟悉。

-等等,现在我正在阅读有关加密的更多信息...它尚未投入生产,所有内容都在调试模式下运行,这就是为什么:)

0 个答案:

没有答案