防止ASP.Net项目将{assembly} .dll.config复制到bin文件夹

时间:2017-03-16 01:11:17

标签: c# asp.net visual-studio visual-studio-2015 web-config

在Visual Studio(2015版社区)中构建ASP.Net项目时,构建过程会将网站配置文件(例如Web.Config)复制到bin文件夹与已编译的.dll文件一起,并重命名为{assembly}.dll.config

尽管使用以下参数设置了Web.config文件的属性窗口,但仍会发生这种情况:

Web.config Properties Window

对于我们的解决方案,该文件的第二个副本不是必需的,也不在输出{assembly}.dll.config文件夹中的bin表单中使用。

我想知道有什么必要阻止Visual Studio制作配置文件的副本并将其放在bin输出目录中。

两个位置(Web.config位于根目录中,而{assembly}.dll.config位于输出目录中)中的敏感配置设置从安全角度来看是有问题的。

1 个答案:

答案 0 :(得分:2)

  • 部署您的应用,Publish您的应用。这样,只部署了必要的程序集/文件。您的已发布 /bin文件夹会反映出这一点(不会出现"重复文件"您提及)。

  • 安全性:取决于您之后的情况,您可以

    • 分开"敏感"从web.confg到他们自己的文件的信息。这通常仅用于保存在线存储库(TFSGit等) - 通过排除文件来源于源代码管理

      e.g。

      <appSettings file="AllMySecrets.config">
      ....
      
    • 使用encryption

H个。