2

我正在努力寻找一种不检查我的密码到我的web.config.production类型文件中的好方法(当Web Deploy发布完成)。我的工作流程是我的团队检查和检查github,然后当我们准备进行生产部署时,我们有一个自定义的web.config.deployment配置,其中包含我们所有的真实密码。问题是所有开发人员都会看到这些密码。如何在使用GIT和WebDeploy时隐藏web.config appsetting params发布

我正在寻找如何不必将这些密码放入我们的github存储库的建议,尽可能使用一点摩擦。也就是说,现在,我们必须进入我们的Web服务器并手动更改这些密码。 Azure让你将它们设置在天蓝色的门户中,但我们不使用天蓝色。

回答

1

一种选择是在IIS中存储这些应用程序设置\连接字符串。然后,它们将在启动时应用于web.config,并且只有有权访问您的IIS管理的成员才能访问它们。

看到这些帖子:
http://forum.winhost.com/threads/setup-the-connection-string-in-web-config.7592/ http://technet.microsoft.com/en-us/library/cc753224(v=ws.10).aspx

应用程序设置 - 指定将通过启动你的web应用程序加载的名称/值对。对于.NET网站,这些设置将在运行时注入到.NET配置AppSettings中,覆盖现有设置。

连接字符串 - 查看链接资源的连接字符串。对于.NET站点,这些连接字符串将在运行时注入到.NET配置connectionStrings设置中,覆盖键等于链接数据库名称的现有条目。

+0

是否有任何好的工具可以访问远程保护的数据密码?将RDP加入我们的服务器永远不会是一种有趣的体验。我也不想将这些信息手动输入到每个网站的inetmgr中。我喜欢web.config部署文件的想法,只是不是它们与github中的其他源代码位于同一个github存储库中。 –

+1

这听起来像是一个更好的选择,你可能会加密你的web.config中的部分,http://msdn.microsoft.com/en-us/library/53tyfkaw(v=vs.100).aspx – malexander

+1

应用程序设置在IIS中只是web.config编辑的UI。在网络部署后它们被覆盖。 –