Service Fabric、Azure Devops 部署失败:指定的网络密码不正确

Posted

技术标签:

【中文标题】Service Fabric、Azure Devops 部署失败:指定的网络密码不正确【英文标题】:Service Fabric, Azure Devops Deployment fails : The specified network password is not correct 【发布时间】:2020-10-02 21:14:15 【问题描述】:

最近,由于存在安全风险,我们的 IT 团队命令我禁用我的 Service Fabric 集群上的 NAT 池。我能做到这一点的唯一方法是部署一个包含所有组件的新集群。

因为这是一个测试环境,我选择为我的集群使用没有密码的自签名证书,该证书在我的保管库中,并且集群已启动并运行。

我现在遇到的问题是,当我尝试从 Azure Devops 发布管道部署我的应用程序时,我收到以下消息:

尝试导入证书时出错。确保使用正确的证书值正确配置您的服务端点,如果证书受密码保护,请确保使用有效密码。错误消息:使用“3”参数调用“导入”的异常:“指定的网络密码不正确。

我在 Key Vault 中生成了自签名证书,下载了证书并使用 Powershell 获取了用于服务连接的 Base64 字符串。

我应该自己创建证书,并使用密码吗?

【问题讨论】:

见 cmets here。证书必须包含私钥和密码。您可以使用 OpenSSL 添加密码。 学究式...您需要证书和私钥。公钥在证书中。证书不包含私钥。如果您在 KV 中创建自签名证书,则需要下载 PFX 文件,而不是 CER 文件。 PFX 文件是证书 + 私钥,而 CER 文件是证书。 IIRC,KV 下载 pwd 加密的 PFX 文件。 【参考方案1】:

根据提供的两个 cmets 的方向,我最终使用服务结构的本地运行时附带的 powershell 脚本在本地计算机上生成了一个证书。

这里有个小提示,就是将脚本中的密钥大小改成比默认的大,因为 ke vault 不支持 1024 个密钥。

然后我从我的用户证书中导出 pfx 添加了一个密码(这是服务连接所必需的)并将新的 pfx 导入到我的密钥库中。

重新部署了我的集群并且它工作了。

【讨论】:

嗨@Steve 非常感谢这里分享的这个解决方案。你可以accept your answer,让其他人直接知道这是工作。 感谢凯文,关于这类事情的文档很少,我知道我们无法涵盖所有​​基础,但这似乎是一个非常通用的设置。只是一个问题,如果你能发现,为什么 Key vault 没有创建带有密码的证书的选项?

以上是关于Service Fabric、Azure Devops 部署失败:指定的网络密码不正确的主要内容,如果未能解决你的问题,请参考以下文章

Azure Service Fabric:无法运行本地 Service Fabric 群集

Azure Service Fabric 群集端点不可访问

Azure App Service 与 Azure Service Fabric [关闭]

为 Service Fabric 配置 Azure 部署

Azure Service Fabric

在 Azure 中收集 Service Fabric 群集日志