在.NET可执行文件中编辑SQL

Rus*_*ell 0 .net sql

我正在开发为.NET 4框架编译的Winforms应用程序.应用程序使用类型化数据集和加密连接字符串访问SQL Server.

出于好奇,我在二进制编辑器中打开可执行文件,发现我能够以纯文本的形式查看数据集中的SQL查询.我担心这会打开安全问题 - 例如,有人将"select*from mytable"更改为"从mytable中删除".

防止这种情况的最佳方法是什么?关于混淆的普遍共识似乎是"不要打扰",但这肯定是等待发生的安全噩梦?是否有任何人可以推荐的最佳实践或工具?

Jon*_*eet 5

当然,这是一场等待发生的安全噩梦

您的可执行文件可以访问的任何内容都可以由用户使用自己的代码完成.

如果您不相信用户不要使用数据库,请限制他们的角色/用户在数据库级别可以执行的操作.

您的用户是否应该能够删除数据?如果是这样,他们为什么要编辑您的可执行文件而不是编写自己的代码?如果没有,为什么你允许他们这样做(在数据库级别)开始?