我目前正在使用ConfigurationManager保护我的凭据
string _conStr = ConfigurationManager.ConnectionStrings["fluxConnection"].ConnectionString;
我想知道是否有更好的方法来保护我的服务器凭据,甚至不值得尝试突破。我已经看到有些人通过那里的网站使用api来检索凭据或类似的东西。但不确定这甚至会起作用。
答案 0 :(得分:2)
这一切都取决于你关注的程度。
0级:什么都不做
大多数人将凭据添加到网络/应用配置中的连接字符串,这已经足够了。窃取凭据的唯一人是已经可以访问服务器的人。
第1级:加密
要保护那些为您工作的人员的凭据,可以加密连接字符串:See MSDN for Connection String Encryption。
第3级:自定义
您可以创建一个Web API Restful Web Service,从另一个数据库中读取加密的数据库凭据,并以加密形式将其返回给您。然后,您可以从代码中调用Web服务,解密为您提供的凭据,从而构建连接字符串。
答案 1 :(得分:0)
鉴于你的意见:
但我确实计划在我完成时购买服务器
除了加密连接字符串外,该实际配置文件不是您开始保护环境的地方。基本上,应用程序确实需要连接。因此,在某些时候,即使使用远程API(您需要...连接设置..),字符串必须在某处可用。
我的建议:
在部署期间更改配置设置。这样,生产信息就不会出现在开发环境中。
我希望您的生产环境旁边有大量其他安全措施,最终到达配置文件。
实现这一目标的基本系统的一个很好的例子是Octopus Deploy。