加入收藏 | 设为首页 | 会员中心 | 我要投稿 东莞站长网 (https://www.0769zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 资源网站 > 资源 > 正文

基于https的Azure Service Fabric上的无状态Web Api

发布时间:2020-12-30 17:39:38 所属栏目:资源 来源:网络整理
导读:所以我在Azure Service Fabric上托管了一个Web Api,我想通过https公开它. 第一个问题:Microsoft提供的* .cloudapp.azure.com的默认证书是否与App Service类似? 如果没有,我如何拥有一个我不拥有的域的有效证书(由知名CA颁发)? 如果它在某种程度上可能,我

所以我在Azure Service Fabric上托管了一个Web Api,我想通过https公开它.

第一个问题:Microsoft提供的* .cloudapp.azure.com的默认证书是否与App Service类似?

如果没有,我如何拥有一个我不拥有的域的有效证书(由知名CA颁发)?

如果它在某种程度上可能,我想我需要将此证书上传到Azure Vault并在服务清单中引用其指纹对吗?

我是否应该使用相同的证书来保护集群并公开SSL端点?

谢谢!

解决方法

* .cloudapp.azure.com没有通配符证书,就像* .azurewebsites.net一样.对于SSL,您必须注册自己的域并将其CNAME到您的群集域(例如,mycluster.westus.cloudapp.azure.com),或者为您的负载均衡器VIP获取静态公共IP并将您的A记录指向那( more on public IPs in Azure here).然后从您最喜欢的CA购买该域名的证书.

获得证书后,是的,您将把它存储在密钥保管库中(确保在创建密钥保管库时设置-EnabledForDeployment!)并将其放入群集ARM模板(to get it installed on your nodes).

要使用HTTPS,首先在ApplicationManifest.xml中设置证书引用:

<Certificates>
   <EndpointCertificate X509FindValue="<Your Certificate Thumbprint>" Name="Cert1" />
</Certificates>

然后在Application Manifest的ServiceManifestImport部分中设置EndpointBindindPolicy:

<ServiceManifestImport>
...
   <Policies>
      <EndpointBindingPolicy EndpointRef="ServiceEndpoint" CertificateRef="Cert1" />
   </Policies>
</ServiceManifestImport>

最后,在ServiceManifest.xml中引用Endpoint配置中的cert:

<Endpoints>
  <Endpoint Name="ServiceEndpoint" Type="Input" Protocol="https" Port="443" CertificateRef="Cert1"/>
</Endpoints>

您可以使用相同的证书来保护您的群集并向用户提供SSL,但我建议您使用不同的证书,这样您就不会将服务器证书分发给客户端以进行群集身份验证.

编辑:也可以使用支持SSL卸载的Azure Application Gateway.然后它将处理HTTPS方面并将HTTP与群集通信

(编辑:东莞站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读