C# Azure正在部署连接字符串为纯文本的web.config文件

C# Azure正在部署连接字符串为纯文本的web.config文件,c#,asp.net,azure,web-config,azure-web-app-service,C#,Asp.net,Azure,Web Config,Azure Web App Service,我的代码中的web.config文件只包含我的本地开发人员数据库连接字符串,当我将web应用部署到Azure时,它正确地从门户上应用程序设置中的连接字符串条目中获取了我的数据库连接字符串。但是,它随后创建并部署了一个web.config文件,该文件以纯文本形式显示该字符串(如果我通过FTP检查该文件,我可以看到这一点) 这是正确的行为吗?我真的不希望连接字符串以纯文本形式存储在部署的web.config文件中(无论多么安全) 现在是不是通过某个构建/部署步骤对web.config文件的该部分进行

我的代码中的web.config文件只包含我的本地开发人员数据库连接字符串,当我将web应用部署到Azure时,它正确地从门户上应用程序设置中的连接字符串条目中获取了我的数据库连接字符串。但是,它随后创建并部署了一个web.config文件,该文件以纯文本形式显示该字符串(如果我通过FTP检查该文件,我可以看到这一点)

这是正确的行为吗?我真的不希望连接字符串以纯文本形式存储在部署的web.config文件中(无论多么安全)

现在是不是通过某个构建/部署步骤对web.config文件的该部分进行加密?我曾在其他帖子中提到过这一点,但不清楚如何在Azure上实现这一点


注意:如果我已经做了很多搜索,但是找不到任何直接指向最终部署的web.config文件的内容,请道歉

如果我们不想在Web.config中以纯文本形式配置连接字符串。我们可以在中设置连接字符串以替换web.config中的连接字符串

有一个关于

开发人员可以存储普通的键值对以及将用作连接字符串的键值对。由于键值对存储在后台的Windows Azure网站配置存储中,键-值对不需要从安全性的角度存储在web应用程序的文件内容中,这是一个很好的附带好处,因为敏感信息(如带有密码的Sql连接字符串)永远不会在web.config或php.ini文件中显示为明文


已经试过这个了吗?事实证明,我愚蠢地在VS publish to Azure向导上勾选了“在运行时使用此连接字符串(更新目标web.config)”框,因此这就是注入连接字符串的原因。不过,也因为我在“执行代码第一次迁移”框中勾选了第二个“上下文\u数据库发布”conn字符串也被添加了(本质上是第二个副本)-因此我决定通过代码手动运行代码优先迁移,而不是使用此选项和web.config,如这里所述>。结果现在只是web.config中的本地dev conn字符串,Azure会在运行时将其替换为我的门户应用程序设置中的值。不过,这将在将来的某个时候非常有用。毫无疑问,您有关于此线程的任何更新吗?