• 全部
  • C#综合技术
  • C#互联网桌面应用
  • AppLauncher
  • WinForm&WPF
  • C#开发新技术
  • 问答

么才能防止被Copy走数据库文件附加到另一台机器上呢?

listhome 2007-06-18 11:04:14
大家好:
现在有一个项目要在客户的机器上部署一个SQL2005 Express的数据库,怎么才能防止被Copy走数据库文件附加到另一台机器上呢?比如,防止Copy,或Copy走了也不能附加到另一台机器上? 非常重要,请大家帮忙。谢谢!
王玉楠
...全文
795 点赞 收藏 27
写回复
27 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
大熊猫侯佩 2007-06-21
我就是数据本地加密,感觉速度还行。
回复
lao_bulls 2007-06-21
对data文件夹加密,sql server 是否还能正常对数据库读写操作!
回复
go_now 2007-06-20
1.搞好系统安全,是前提
2.如果能分离数据库,用户拥有管理员权限了
3.本人认为你可以对data文件夹加密,有好多加密工具,即使他分离了数据库(它也打不开存放的文件夹,仍然拷不走)
回复
effun 2007-06-20
wtoeb,如果数据需要加密,那数据的存和取一定是要进行加密和解密的计算,这样的话肯定会增加额外的CPU开销,这点我想你也不否认吧。至于怎么样减少这种开销那是另一个问题了,我觉得不需要在这里讨论。
另外,你说要直接破解服务器密码,好象又跑题了,在我之前的回复已经提到这个问题了,“如果能把数据库拷走就说明已经能够登录到服务器上”,这里已经假设用户拥有管理员权限了。
回复
yucong 2007-06-19
ntfs 加密
回复
killer_liqiao 2007-06-19
恩~~楼上的都是正解
回复
wtoeb 2007-06-19
根据effun的说法,数据加密虽然会加重服务器的负担,但是内存数据库是一个发展趋势,随着计算机性能的提升,上TB的数据库如果由数据库来处理,反而会影响服务器的速度和性能。如果把数据加密都能够随意拿得出来,我想,还不如直接破解服务器的密码来得更容易,那互联网上的服务器就没有安全可言了。
回复
effun 2007-06-19
如果能把数据库拷走就说明已经能够登录到服务器上,这样的话再怎么加密都是有办法拿出数据来的,而且给数据加密会加重服务器的负担。
回复
lao_bulls 2007-06-19
顶,我也有同样的需求,难道sql sever就没有办法解决?
回复
impeller 2007-06-19
回复
wtoeb 2007-06-19
加密数据,比如:
1.加密前:
id name user flag
1 abc abc 0
2.加密算法(将当前的id号与各字段的数据连接起来):
id name user flag
1 1+'-'abc 1+'-'abc 0
3.加密后:
id name user flag
1 DKDSK97S DKDSK97S 0

这样,没有人能解密了,即使得到数据也没用。即使name和user数据一样,但ID号不一样,所以,加密以后的数据也不一样了。

当然,如果要查询这个数据库,就必须先解密,然后对内存中的数据进行查询。
回复
jrl5365 2007-06-19
想想也只能加密数据要不加密表结构可能比较好点!
回复
david_anwei 2007-06-18
这个因该在代码里面来实现不太现实,不知道SQL2005 Express 有没有类似的功能
回复
amandag 2007-06-18
可能在数据库版问更好些,这个问题更偏向数据管理
回复
但是实际中也存在数据库迁移的需要,所以数据加密迁移不好办
回复
关注,这个问题很有实际意义
我曾经想把数据本地加密,但是那样性能影响太大,放弃了
回复
showrock 2007-06-18
散分吧
我的想法是代码加密,附加也用不成了
回复
listhome 2007-06-18
难到这个贴又成了散分贴?
回复
younglady 2007-06-18
我也想過這個問題,不過不知道怎麼弄。幫頂一下
好像sqlserver開著的時侯拷不了的。
回复
listhome 2007-06-18
谢楼上
回复
发帖
C#
创建于2007-09-28

10.5w+

社区成员

.NET技术 C#
申请成为版主
帖子事件
创建了帖子
2007-06-18 11:04
社区公告

让您成为最强悍的C#开发者