【问题标题】:Azure Service Fabric Java SSL/HTTPS serverAzure Service Fabric Java SSL/HTTPS 服务器
【发布时间】:2018-01-06 19:38:05
【问题描述】:

我一直在研究 Azure Service Fabric 开发,并成功地用 Java 创建了一些测试 HTTP 无状态服务应用程序。现在我想以 HTTPS 的形式使用加密的 api 服务器通信,但我找不到任何关于如何在 Service Fabric 环境中设置此类服务器的信息。

在我的 HTTP 应用程序中,我一直在使用 com.sun.net.httpserver.HttpServer 类,当我签入 HttpsServer 类时,我无法弄清楚如何将证书保存到应用程序中,以便它可以与 @987654323 一起使用@ 班级。所有使用 HttpsServer 的示例应用程序似乎都从磁盘读取证书文件,据我所知,这在 ServiceFabric 环境中是不可能的。

那么在 Java Service Fabric Stateless-Service 应用程序中设置 HTTPS 服务器的正确方法是什么?

【问题讨论】:

    标签: java ssl https server azure-service-fabric


    【解决方案1】:

    您可以使用 ARM 模板将certificates 部署到集群节点。

    或者: 您也可以为此使用 dotnet core 和 Kestrel。以下是一些入门链接。

    Github

    Channel9 Video

    Blog

    您还可以选择在 Service Fabric 上以 container 的形式运行 NodeJSFlask 等 Web 服务器。

    【讨论】:

    • 你能指出一些关于如何在本地开发集群上使用ARM的参考吗?另外,我从哪里以及如何从我的 Java 代码加载 SSL 证书,以便在 ARM 模板将其设置到集群后将其传递给 HttpsServer 对象?
    • 只能在 Azure /Azure Stack 上使用 ARM。在您的开发集群(您的开发机器)上,您可以使用磁盘中的证书(与任何其他本地应用程序中的工作方式相同),因为所有节点都在一台机器上运行。
    • 好的,谢谢您的信息。再来一个客人;当我使用 ARM 模板从 KeyVault 部署证书时,证书在生产环境(在 Azure 中)中的位置?最重要的是,当集群在 Azure 中运行时,如何在运行时从 Java 应用程序访问证书?证书是否会在集群机器上的某个标准位置上可用,我的应用可以从中加载它?
    • 它以指纹为文件名部署在/var/lib/waagent中,只要你有适当的权限,你就可以在那里访问它。
    猜你喜欢
    • 2016-09-29
    • 2017-06-09
    • 2020-01-23
    • 2017-10-30
    • 2017-12-17
    • 2016-04-07
    • 1970-01-01
    • 2019-11-30
    • 2017-01-04
    相关资源
    最近更新 更多