我的代码中的web.config文件只包含我的本地开发人员数据库连接字符串,当我将我的Web应用程序部署到Azure时,它正确地从应用程序设置中的连接字符串条目中获取数据库的连接字符串在门户网站上。然而,它正在以纯文本形式创建和部署带有此字符串的web.config文件(如果我通过FTP检查文件,我可以看到这一点。)
这是正确的行为吗?我并不是真的希望连接字符串以明文形式存储在已部署的web.config文件中(不过可能已经安全)。
现在是否通过某些构建/部署步骤加密web.config文件的该部分?我在其他帖子中看到了这一点,但目前还不清楚如何在Azure上进行此操作。
N.B。如果我已经提出了很多搜索要求,并且无法找到直接引用最终部署的web.config文件的内容,我深表歉意。
答案 0 :(得分:1)
如果我们不想以纯文本格式在Web.config中配置连接字符串。我们可以在 Azure Website appsetting 中设置连接字符串,以便在web.config中替换它。
有关于How Application Strings and Connection Strings Work
的教程开发人员可以存储普通的vanilla键值对以及将用作连接字符串的键值对。由于键值对存储在Windows Azure网站配置存储中的幕后,因此键值对不需要存储在Web应用程序的文件内容中安全性透视,这是一个很好的附带好处,因为敏感信息,如带有密码的Sql连接字符串永远不会在web.config或php.ini文件中显示为明文。