【问题标题】:Automatically encrypt sections of web.config after deploy / publish?部署/发布后自动加密 web.config 的部分?
【发布时间】:2009-06-04 14:32:53
【问题描述】:

我有两个相关的问题:

在环境之间管理 Web 项目部署的最佳方式是什么?我刚刚下载了 .NET Web 部署项目,它似乎可以处理一些事情,比如替换 web.config 的某些部分以匹配环境,这很棒。我想要自动化的另一件事是加密web.config 的某些部分。发布后有什么方法可以'auto-encrypt'web.config 部分吗?

第二个问题是您将密码存储在web.config 的什么位置?我想加密密码而不是 appSettings 的其余部分。一定要自定义web.config配置设置区吗?

【问题讨论】:

    标签: .net web-deployment


    【解决方案1】:

    嘿 Joel - Web 部署项目现在有点过时了 - 请改用 MS Deploy 工具(它将与 vs2010 一起提供,但现在可以独立使用)。您所问的问题可能不是使用 MSDeploy(特定于机器的 DPAPI 加密)开箱即用的,但由于该工具与 powershell 集成,您可以使用 powershell v2 CTP3 远程处理功能运行脚本来加密您的配置每台机器,远程(无论如何这是您可以访问机器本地 DPAPI 的唯一方法。)

    这里的这个人做了类似的事情:

    http://forums.iis.net/p/1156413/1904975.aspx

    -奥辛

    【讨论】:

      【解决方案2】:

      在 webapp 部署到新环境后,我们使用RSA Protected Configuration 手动加密 web.config 的部分。操作系统为我们保护密钥。希望这对您了解如何自动化您的解决方案有所帮助。

      【讨论】:

        【解决方案3】:

        现在似乎在 Web Deploy 的 3.5 版中添加了对部署后加密 web.config 部分的支持。

        https://blogs.iis.net/msdeploy/archive/2013/07/09/webdeploy-3-5-rtw.aspx

        【讨论】:

        • 对此的重要说明是内置选项仅加密connectionStrings 设置。如果您想加密任何其他设置,则必须通过单独的机制(例如 PowerShell 脚本)来完成
        猜你喜欢
        • 2012-08-31
        • 1970-01-01
        • 2011-03-31
        • 1970-01-01
        • 2013-05-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多