我正在为客户开发一些Web项目,利用Visual Studio和C#,这些项目与知识产权密切相关。项目本身的性质或其功能不一定受到保护,但内容是。当我的日程安排有些紧张时,我有时会使用自由开发人员来帮助完成一些工作。但特别是对于这个客户端,我从不觉得这样做是因为我担心自由职业者可以访问配置文件中的DbConection字符串,或Azure Blob连接字符串。
显然,web.config指向不包含敏感信息的Db的本地副本,但发行版本中有实际的字符串用于发布。
虽然我确信没有单一的正确或最好的"回答,我很好奇社区的其他人会建议什么来保持我的客户的隐私和数据完整性,同时仍然能够利用我所有可用的资源来完成工作。
TIA
答案 0 :(得分:1)
我刚刚回答了以下问题以解决其他问题(不是重复的问题,但同样的答案适用于这两个问题)
对于新的ASP .NET Core,您可以选择在开发期间启用用户机密来使用Application Secrets。在Azure上,您可以为Web App创建环境变量。
对于旧版本的ASP .NET,您可以使用configSource属性将连接字符串保留在web.config之外。您可以将它与Debug和Prod的转换文件结合使用。
我写了一篇关于它的博客文章:
希望对当前和未来的项目有所帮助!