0

我正在使用 Visual Basic.net 并且有一个关于与在线数据库的 SQL 连接的问题。

如果我通过代码连接到 SQL 数据库,这个连接的安全性如何?如果我在代码中有服务器的密码和地址,用户可以计算出登录名并篡改数据库吗?

4

2 回答 2

0

不久前,我编写了一个连接到我分发的 SQL 数据库的程序,在我知道 .Net 可以多么容易地被反编译之前。获取几乎完整的源代码非常容易,任何人都可以查看连接信息。即使您加密了连接字符串,如果加密/解密是作为程序中的子程序编写的,您仍然为他们提供了解密它的工具(这只会占用他们更多的时间并导致他们更加恶意) .

我解决这个问题的方法是完全锁定用户的权限,以便他们也只能查看/选择/更新我想要的区域。我限制了他们不需要的所有操作,只允许我的应用程序使用存储过程。即使有了这些,用户仍然可能会导致一些问题。

有一些称为混淆器的工具会扰乱源代码以使其更难阅读。请注意,我说得更难了,但并非不可能。

于 2013-08-20T18:25:16.077 回答
0

“如果我在代码中有服务器的密码和地址,用户是否可以计算出登录名并篡改数据库?”

是的 - 使用互联网上免费提供的工具,用户可以反编译您的代码并找到密码和用户名。

如果您需要存储密码,请将其存储为加密字符串,然后在连接到数据库之前对其进行解密。

于 2013-08-20T13:47:10.143 回答