查看加密的数据库数据

时间:2011-07-12 13:45:41

标签: java sql-server sql-server-2008 encryption

我正在使用SQL Server 2008存储一些加密信息。大约有5个数据库表具有加密数据的字段。 使用Java在服务器端完成加密。我的问题是我们还需要查看/更新此加密信息。要查看/更新数据库中的加密信息,我正在创建一个Web应用程序,允许用户查看/更新驻留在数据库中的加密信息。

例如,假设用户需要将新数据插入到包含加密字段的数据库中:

  1. 用户可以在Web应用程序中输入INSERT SQL查询 并让App Server解析查询。

  2. 如果我找到需要加密的字段,那么我必须提取 明确的文本值,使用Java加密然后修改 查询加密值。

  3. 对数据库执行修改后的INSERT查询。

  4. 现在解析SQL查询并修改它们将是一件痛苦的事。我只是想知道是否有更简单的方法来做到这一点。有没有人这样做过?是否有任何工具可以促进这一点?

    事情是数据库将安装在客户端站点上,因此我们必须加密数据库字段以保护知识产权。客户端可以完全访问其数据库,因此使用内置加密的SQL Server不是一个好主意。

    任何建议表示赞赏。

1 个答案:

答案 0 :(得分:2)

我建议不要使用来自网络应用程序的直接sql语句输入,这就是为什么

  1. 无数据验证(用户列无数据类型帮助)
  2. 输入sql错误中的用户错误(只能在jdbc执行时验证)
  3. 更不用说,这不是最安全的做法
  4. 如果您使用表单路径,则需要为表格添加/编辑表单,并将所有列列为表单输入。您可以解决所有上述问题,也可以在每列旁边添加复选框,并使列的加密更加可配置。

    如果你还有直接sql的理由,我想你可以看看下面这个帖子,如果我是你,我会解析查询我自己

    SQL parser library for Java