【发布时间】:2018-01-19 07:49:04
【问题描述】:
我的代码中的 web.config 文件只包含我的本地开发数据库连接字符串,当我将我的 Web 应用程序部署到 Azure 时,它正确地从门户应用程序设置中的连接字符串条目中获取我的数据库的连接字符串。然而,它会创建和部署一个带有纯文本字符串的 web.config 文件(如果我通过 FTP 检查文件,我可以看到这一点)。
这是正确的行为吗?我真的不希望将连接字符串以纯文本形式存储在已部署的 web.config 文件中(尽管这可能已经很安全了)。
现在是否需要通过一些构建/部署步骤来加密 web.config 文件的该部分?我在其他帖子中看到过这一点,但不清楚如何在 Azure 上做到这一点。
注意抱歉,如果我已经进行了很多搜索,但找不到任何直接涉及最终部署的 web.config 文件的内容,则表示歉意。
【问题讨论】:
-
事实证明,我在 VS 发布到 Azure 向导上勾选了“在运行时使用此连接字符串(更新目标 web.config)”框,所以这就是注入连接字符串的原因.
-
另外,但是因为我勾选了“执行代码优先迁移”框,所以还添加了第二个“Context_DatabasePublish”conn 字符串(本质上是第二个副本) - 所以我决定运行我的代码优先迁移手动通过代码而不是使用此选项和 web.config,如此处所述 > stackoverflow.com/questions/30280346/…。结果现在只是 web.config 中的本地 dev conn 字符串,Azure 在运行时将其换出为我的门户应用程序设置中的值
-
感谢您提供的链接,毫无疑问,这将在以后的某个时候派上用场
-
你有关于这个线程的任何更新吗?
标签: c# asp.net azure web-config azure-web-app-service