社区
C#
帖子详情
怎样实现对SQL数据库进行加密?请大家给些建议和方法,进者均有分!
morou_007
2005-09-01 08:57:19
我想实现对SQL数据库进行加密,数据库是应用在winform中的,但是现在还没有头绪(当然不只是对登陆用户的密码进行加密),请大家提提建议和方法!
...全文
721
25
打赏
收藏
怎样实现对SQL数据库进行加密?请大家给些建议和方法,进者均有分!
我想实现对SQL数据库进行加密,数据库是应用在winform中的,但是现在还没有头绪(当然不只是对登陆用户的密码进行加密),请大家提提建议和方法!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
25 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
emanlee
2006-06-27
打赏
举报
回复
to jinjazz(近身剪(充电中...)) ( ) 信誉:100
数据库安全不是这么搞得,你还是学学dba方面的东西,sql数据库的安全性是足够了
----------------------------------------------------------------------------------
倘若是c/s模式,客户可以看到你的*.mdf数据库文件,把这数据库文件拷贝到其他pc上,注册到企业管理其中,一切都可以看到,这个你试过了吗?
cdo
2005-09-01
打赏
举报
回复
帮顶一下.
morou_007
2005-09-01
打赏
举报
回复
领导只是给我下达任务,让我实现加密功能,并没有说用什么途径和方法,所以对于数据库的知识的欠缺只能是我无知,而于领导毫无关系啊!况且到这里发问的人都是“因为知识欠缺,所以发问”
morou_007
2005-09-01
打赏
举报
回复
我的领导只是让我实现这个功能,但他并没有说用什么途径,方法,所以我对数据库的知识不懂那只是我的无知,而与领导无关!因为欠缺知识,所以才来发问!
morou_007
2005-09-01
打赏
举报
回复
SQL-Server能辨别且使用被自己加密的数据库文件:
如果在资源管理器中对数据库文件进行加密,则会提示"该文件正在使用中",所以,必须停止SQL-Server服务器,然后再进行加密,但加密后再启动SQL-server服务器,刚刚加密的文件将无法使用,SQL企业管理其中显示为"置疑"数据库. 这就是所说的"SQL-Server无法辨别被用户加密的数据库文件."
lyb_abiandbel
2005-09-01
打赏
举报
回复
如果是不让打开数据库这些还是用数据库安全机制去解决,
如果只是对数据库字段操作,那当然是加密解密了。
家鸣
2005-09-01
打赏
举报
回复
加:密码字符串原文——加密——存储密文到字段
解:读取密文——解密——密码字符串原文
leeyeefeng2004
2005-09-01
打赏
举报
回复
system.secruity下面一搭子加密类~~~~DES,MD5,SHA等等~~
liduke
2005-09-01
打赏
举报
回复
觉得最简单的办法还是将数据加密后的密文存入到数据库中,要不就把数据库表加密
givenchy
2005-09-01
打赏
举报
回复
呵呵,楼上可爱。
jinjazz
2005-09-01
打赏
举报
回复
你不让他们打开不就可以了,真是脱了裤子放屁。数据库不是word文档,他又自己的安全机制,你们领导白痴不是他的错,你搞技术的跟着他白痴就说不过去了。你所碰到的问题,通过sql的安全配置都可以解决的,而不是异想天开的直接对数据库文件修改
TechEye
2005-09-01
打赏
举报
回复
人把数值加密后存进去,取出来后再解密不就行了,别人当然查询不了.
DanielTangram
2005-09-01
打赏
举报
回复
就像把密码字段加密成乱码一样,是能够实现的,加密流程如下
加:密码字符串原文——加密——存储密文到字段
解:读取密文——解密——密码字符串原文
morou_007
2005-09-01
打赏
举报
回复
刚才请示领导,领导说想实现客户可以用我们的数据库工作,但是他们不能够打开表(退一步,即使打开表也看不到正确的数据),修改表,删除表。也就是说我客户可以用我们的正常运行我们的管理系统但却不能对我们的数据库进行操作和查看。请问能实现吗?
morou_007
2005-09-01
打赏
举报
回复
我只是想实现只有指定的客户,经过我们的软件才可以看到数据,对其进行操作,其他用户未经许可(即解密)即使打开数据库,看到表格中的数据也不是正确的,而且这是一个单机版数据库,不是web程序中的,而且数据库没有sa密码,是windows nt 验证的。并且对文件加密我也会一点,MSN也看过,可能还是没有完全掌握吧,我目前不知道怎样对关键的字符加密,并且不影响数据的类型。
**还有,我想请问各位说的对关键“字段”加密中的字段是指关键“列”还是关键“字符串(字符)”啊?
flyingdream123
2005-09-01
打赏
举报
回复
不知道楼主这样做有何目的?
jinjazz
2005-09-01
打赏
举报
回复
数据库安全不是这么搞得,你还是学学dba方面的东西,sql数据库的安全性是足够了
Q : 數據庫安全管理范例!
主要解答者: zjcxc 提交人: zjcxc
感谢: zjcxc
审核者: pbsql 社区对应贴子: 查看
A :
首先,做好用户安全:
--简单的,只允许sql的用户访问sql(防止利用administrator组用户访问)
1.企业管理器--右键SQL实例--属性--安全性--身份验证--选择"sql server和windows"--确定
2.企业管理器--安全性--登陆--右键sa--设置密码--其他用户也设置密码
3.删除用户:
BUILTIN\Administrators
<机器名>\Administrator --这个用户不一定有
这样可以防止用windows身份登陆SQL
4.设置进入企业管理器需要输入密码
在企业管理器中
--右键你的服务器实例(就是那个有绿色图标的)
--编辑SQL Server注册属性
--选择"使用 SQL Server 身份验证"
--并勾选"总是提示输入登录名和密码"
--确定
--经过上面的设置,你的SQL Server基本上算是安全了.
------------------------------------------------------------------------
其次,改默认端口,隐藏服务器,减少被攻击的可能性
SQL Server服务器
--开始
--程序
--Microsoft SQL Server
--服务器网络实用工具
--启用的协议中"TCP/IP"
--属性
--默认端口,输入一个自已定义的端口,比如2433
--勾选隐藏服务器
----------------------------------------------------------------------------
--管好sql的用户,防止访问他不该访问的数据库(总控制,明细还可以控制他对于某个数据库的具体对象具有的权限)
--切换到你新增的用户要控制的数据库
use 你的库名
go
--新增用户
exec sp_addlogin 'test' --添加登录
exec sp_grantdbaccess N'test' --使其成为当前数据库的合法用户
exec sp_addrolemember N'db_owner', N'test' --授予对自己数据库的所有权限
--这样创建的用户就只能访问自己的数据库,及数据库中包含了guest用户的公共表
go
--删除测试用户
exec sp_revokedbaccess N'test' --移除对数据库的访问权限
exec sp_droplogin N'test' --删除登录
---------------------------------------------------------------------------
最后一步,为具体的用户设置具体的访问权限,这个可以参考下面的最简示例:
--添加
--添加用户:
exec sp_addlogin '用户名','密码','默认数据库名'
--添加到数据库
exec sp_grantdbaccess '用户名','数据库名'
--分本权限
grant insert,select,update,delete on table1 to public
-------------------------------------------------------------------
至于具体的安全设置和理论知道,参考SQL联机帮助
深山老翁
2005-09-01
打赏
举报
回复
我觉得全部加密有点不现实,写个加密算法加密重要字段就行了,System.Security.Cryptography,MSDN里有例子,可以看看.
还有可以去这里看看回答:http://61.186.252.131//Expert/topic/1866/1866394.xml?temp=.7181513
morou_007
2005-09-01
打赏
举报
回复
我知道数据加密,然后再解密,数据以明文形式传入数据库,可是怎么传入啊?在服务器运行的时候不能对加密数据进行操作啊!服务器怎么控制啊?还有我上面说过DES算法不行啊,那要用什么算法啊?
tangyong12
2005-09-01
打赏
举报
回复
如果仅仅是对数据进行加密并不难啊,weisunding说的那样就行。
加载更多回复(5)
解决
SQL
SERVER
数据库
驱动程序无法通过使用安全套接字层(SSL)
加密
与
SQL
Server 建立安全连接问题JAR包
用于解决
SQL
SERVER连接问题驱动程序无法通过使用安全套接字层(SSL)
加密
与
SQL
Server 建立安全连接问题JAR包。
sql
server
数据库
加密
简介
加密
是指通过使用密钥或密码对数据
进行
模糊处理的过程。在
SQL
Server中,
加密
并不能替代其他的安全设置,比如防止未被授权的人访问
数据库
或是
数据库
实例所在的Windows系统,甚至是
数据库
所在的机房,而是作为当
数据库
被破解或是备份被窃取后的最后一道防线。通过
加密
,使得未被授权的人在没有密钥或密码的情况下所窃取的数据变得毫无意义。这种做法不仅仅是为了你的数据安全,有时甚至是法律所要...
极简关系型
数据库
及
SQL
语言
极简关系型
数据库
及
SQL
语言,课程是极简入手,是一门初级入门
数据库
课程,课程主要是设计讲解
数据库
Sql
Server,主要从以下几方面入手:1、述说
数据库
Sql
Server出现及历史发展过程,对
数据库
进行
了解。2、
数据库
在我们生活、工作中作用,用
数据库
能为我们做什么?3、
Sql
Server
数据库
安装及各版本之间联系。4、
Sql
Server
数据库
企业管理资源可视化操作使用。5、
Sql
结构化语言学习。通过课程学习,能够从0到1的开始,对
数据库
有一个全部的了解,心中有数,为学习软件开发、
数据库
开发打好基础。
对
sql
server
数据库
的备份
进行
加密
原文出处:https://www.cnblogs.com/xwgli/p/4522502.html 嗯,最近在研究
数据库
备份相关的东西,考虑到应该为
数据库
备份加个密,就准备从网上搜索一下看看有什么好办法,没想到还挺乱。。。 首先,我从网上搜到的,对
数据库
备份
加密
的
方法
,主要有三种: 1、在使用 BACKUP 语句时,添加 PASSWORD 参数【此
方法
适用于
sql
serve
【
SQL
Server】
数据库
备份
加密
方案
目录透明数据
加密
(TDE)工作原理
加密
层次结构开启TDE秘钥操作目录视图和动态管理视图对备份文件
进行
压缩
加密
xp_cmdshell服务器配置选项xp_cmdshell 透明数据
加密
(TDE) 透明数据
加密
(TDE) 技术可以
加密
SQL
Server、Azure
SQL
数据库
和 Azure Synapse Analytics(
SQL
数据仓库) 数据文件。 这种
加密
方式称为静态数据
加密
。 为了帮助保护
数据库
的安全,可以采取以下预防措施: 设计安全的系统。 对机密资产
加密
。 在
数据库
服务器外围构建防火
C#
110,578
社区成员
642,558
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章