快速介绍:小公司,资源非常有限。我几乎什么都做,包括咖啡。我是程序员,不是安全人员。这就是为什么我问你...
我们的服务器上运行着一个 MS-SQL 2008 数据库和几个 C# 应用程序,它们使用这样的连接字符串直接连接到数据库
"Server=example.org; Database=SomeDatabase; User Id=dbUser; password=**secret**; Encrypt=YES"
应用程序不在服务器上运行,因此数据库实例面向外部世界。此设置运行良好,但我有一些担忧。
1) 究竟是Encrypt=YES
什么意思?整个连接(包括登录等)是否安全(假设没有人接触到连接字符串)?还是我应该有严重的担忧?这些问题是什么(赞赏的关键字)?
2) 分配连接字符串的好策略是什么?
解释第二个问题:直接连接很舒服。与将所有对数据库的调用包装到另一个更安全的通道相比,可以更容易地替换连接字符串的分布......