【问题标题】:How do I restore passwords associated with Publish Profiles?如何恢复与发布配置文件关联的密码?
【发布时间】:2016-12-16 16:25:15
【问题描述】:

我使用发布(Web 部署)将 MVC 和 Web API 应用程序部署到 Azure Web 服务。当我这样做时,会创建一个.pubxml 文件并将其存储在源代码管理中,但密码(可以理解)不在该文件中。

现在假设我有 5 个开发人员,但我只希望其中 2 个能够进行部署。到目前为止,我们对我和 3 名不应该进行部署的开发人员来说都很好。但是那个其他部署者呢?或者,如果我也想从第二个工作站进行部署(或者必须擦除我的主工作站)怎么办?我应该如何恢复我其他机器的部署密码或允许其他部署人员自己恢复它?

我确信去 Azure 门户拉下发布配置文件是解决方案的一部分,但是以最佳实践方式执行此操作的其余部分是什么?

更新:我不希望将我的部署过程更改为从 Visual Studio 发布。这是用于原型设计应用程序,我不会投资编写构建自动化的脚本,直到我们拥有更少流失的东西并且我们不会丢弃的东西。但我仍然不会将 Azure 发布凭据放入源代码控制中。 Microsoft 对如何做到这一点有一个愿景——这就是我正在寻找的。​​p>

旁注:我有一个 Jenkins 构建服务器,它将一套 14 个应用程序推送到 Azure 中的 37 个不同的服务器(云服务、应用程序服务、VM 等)。我得到它。但这不是正确的解决方案。

【问题讨论】:

  • 仅供参考,我想我已经发现了如何实现这一点。这有点令人费解。如果没有人打败我,我会在今天晚些时候写出来作为答案。我现在已经复制了 3 次,所有 3 次似乎都在坚持。所以在这一点上,请不要花时间帮助我解决这个问题,因为我想我已经有了答案。 (预告片:选择发布配置文件,点击返回几次,从 Azure 门户获取密码,粘贴到发布向导中,取消选中/重新选中保存密码,测试,然后下一步并完成向导。是的,靠不住。)

标签: visual-studio-2015 azure-web-app-service webdeploy


【解决方案1】:

最初发布的问题的答案是这样的:

  1. 转到 Azure 门户并为您需要执行此操作的所有应用下载发布配置文件。您目前可以通过现代门户执行此操作,方法是选择应用服务 -> [选择适当的应用服务] -> 概述 -> “...更多”(在顶部)-> 获取发布配置文件。
  2. 在 Visual Studio 中,为您的应用程序拉出“发布”对话框
  3. 选择您要更新的发布配置文件(如果您有多个,则必须为每个配置文件执行这些步骤)
  4. 单击返回按钮,直到看到空白密码文本框
  5. 打开您在第 1 步中下载的相应发布配置文件 XML 文件。然后从 userPWD 字段中复制密码。
  6. 将该密码粘贴到第 4 步中的文本框中。

  1. 取消选中并重新选中“保存密码”框(我发现它有时不会真正保存,除非我这样做,但有时确实如此 - 执行此步骤后从未出现问题)
  2. 验证连接。如果这成功了,你应该会很好。
  3. 单击“下一步”直到最后,但作为附加测试,请执行“预览”以确保一切正常。

这些步骤可能会更改您的 pubxml 文件,但可能不会。密码不存储在该文件中,而是存储在其他地方,如果 Visual Studio 正在管理它,则通常不受源代码控制。但是,我建议您采取重要的附加步骤,对您提交给源代码管理的所有内容执行差异,以确保此发布密码不会被意外提交!

【讨论】:

  • 我在使用 Visual Studio 2019 时遇到了这个问题。感谢您的解决方案。
【解决方案2】:

正确的解决方案是停止从 Visual Studio 发布。在适当的工具(如 TFS RM、VSO 或 Octopus Deploy)中创建一个小型发布管道来部署您的应用程序。

然后,您将在您的 .pubxml 文件中输入一个虚假密码,然后您将使用您的持续部署管道在部署之前及时插入正确的值。我上面提到的所有解决方案都有详细的访问控制,并且可以输入无法返回的替换值。

【讨论】:

  • 我已经更新了我的问题。这不是正确的解决方案。我不想投资编写构建脚本,而我们必须每周重写它并且可能(50/50)在一三个月内将其丢弃。在这种情况下,从 VS 发布对我们来说是正确的解决方案。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-09-28
  • 2019-06-18
  • 1970-01-01
  • 2014-12-11
  • 1970-01-01
  • 2016-07-29
  • 1970-01-01
相关资源
最近更新 更多