① 怎么加密sql2000中的表,或者是指让别人看,不让随意修改
Sa
的账号和密码是不能修改的,可以给数据库设置权限,用户是数据库操作的用户每个数据库分别拥有一个数据库用户登陆用户必须和数据库用户关联,才能访问数据库对象如果没有和数据库用户关联,默认和guest关联新建数据库用户sp_grantdbaccess
'sfz\administrator','aaa'
用use
databasename切换到相应数据库再创建databasename的数据库用户
权限管理GRANT
{ALL|sqlstatement}
TO
account_name
grant
all|select,update
on
ttt(id,name)|on
procere_name
to
表名
服务器角色
Sysadmin
可作任何事Serveradmin
管理服务器配置Setupadmin
增加删除连接服务器Securityadmin
管理数据库登陆Processadmin
管理进程Dbcreator
创建、修改数据库Diskadmin
管理磁盘文件数据库固定角色
Db_owner
Db_accessadmin
Db_datareder
Db_datawriter
Db_addladmn
Db_securityadmin
Db_backupoperator
Db_denydatareader
Db_denydatawriter
② sql server中怎么给数据库表中的用户密码加密
1、首先我们电脑上要安装有SQL Server,然后要准备一个MDF数据库文件。打开SQL Server。
③ sql2008 数据库 建表 表中的某一个字段要加密处理
/*
1.利用对称密钥
搭配EncryptByKey进行数据jiami
使用DecryptByKey函数进行jiemi
这种方式比较适合大数据量
*/
CREATE SYMMETRIC KEY ZXC WITH ALGORITHM = AES_256 ENCRYPTION BY PASSWORD = 'ZXC123456'
OPEN SYMMETRIC KEY ZXC DECRYPTION BY PASSWORD = 'ZXC123456'
--jiami
SELECT Encryptbykey(Key_guid('ZXC'), 'YHDH_C')
--jiemi
SELECT CONVERT(VARCHAR(10), Decryptbykey())
CLOSE SYMMETRIC KEY ZXC;
DROP SYMMETRIC KEY ZXC;
/*
2.利用非对称密钥
搭配EncryptByAsymKey进行数据jiami
使用DecryptByAsymKey函数进行jiemi
用于更高安全级别的加jiemi数据
*/
CREATE MASTER KEY ENCRYPTION BY PASSWORD = 'XIAOMA'
CREATE ASYMMETRIC KEY ABC WITH ALGORITHM=RSA_2048 ENCRYPTION BY PASSWORD = 'ZXC123456'
ALTER ASYMMETRIC KEY ABC WITH PRIVATE KEY (DECRYPTION BY PASSWORD = 'ZXC123456')
--jiami
Select Encryptbyasymkey(Asymkey_id ('ABC'), 'ZXC123456')
SELECT CONVERT(VARCHAR(100), Decryptbyasymkey (Asymkey_id('ABC'),96B1F7E7B7AC3E945E106D82 ))
DROP ASYMMETRIC KEY ABC;
DROP MASTER KEY
/*
3.利用凭证的方式
搭配EncryptByCert进行jiami
DecryptByCert函数进行jiemi
比较类似非对称密钥
*/
CREATE CERTIFICATE ZXC
ENCRYPTION BY PASSWORD = 'xiaoxiao'
WITH SUBJECT = 'DB_Encrypt_Demo Database Encryption Certificate',
START_DATE = '2015-10-1'
--jiami
Select Encryptbycert(Cert_id('ZXC'), '123456')
--jiemi
SELECT convert(Varchar(10), Decryptbycert(Cert_id('ZXC'), ,N'xiaoxiao'))
DROP CERTIFICATE ZXC;
/*
4.利用mima短语方式
搭配EncryptBypassPhrase进行jiami
使用DecryptByPassPhrase函数来jiemi
比较适合一般的数据加jiemi
*/
--jiami
Select Encryptbypassphrase('xiaoma', '123456')
--jiemi
SELECT CONVERT(VARCHAR(100), Decryptbypassphrase('xiaoma', ))
④ 怎么对SQL数据库中的内容加密
不知道你是否知道加密部分的本来内容,如果不知道,这个问题就有点棘手。如果知道那就好搞了。请补充问题内容
⑤ 问下我的软件在sql里存储数据的时候,把其中一个表的一个列加密了,怎么恢复这个列的字符
这个需要再解密才能看到原始字符
⑥ sql server中怎么给数据库表中的用户密码加密
在SQl2005下自带的函数hashbytes()
,此函数是微软在SQL
SERVER
2005中提供的,可以用来计算一个字符串的
MD5
和
SHA1
值,使用方法如下:
--获取123456的MD5加密串
select
hashbytes('MD5',
'123456')
;
--获取123456的SHA1加密串
select
hashbytes('SHA1',
'123456')
;有了这个函数可以在sqlserver中为字符串进行加密,但是hashbytes()
函数的返回结果是
varbinary类型,(以
0x
开头
16
进制形式的二进制数据)通常情况下,我们需要的都是字符串型的数据,很多人首先想到的可能就是用
CAST
或
Convert
函数将varbinary
转换为
varchar,但这样转换后的结果会是乱码,正确转换
varbinary
可变长度二进制型数据到
16
进制字符串应该使用系统内置函数
sys.fn_varbintohexstr()(只在sqlserver2005下有),如下所示:select
sys.fn_varbintohexstr(hashbytes('MD5',
'123456'))
然后就可以截取需要的部分select
lower(right(sys.fn_varbintohexstr(hashbytes('MD5','123456')),32))为md5加密串。
⑦ SQL SERVER数据库中如何其中的一个表进行加密
登录用户指定权限
给个链接
SQL Server 2005 控制用户权限访问表
http://www.cnblogs.com/gaizai/archive/2011/07/14/2106617.html
希望能帮到你
⑧ 关于SQL SERVER 2000,一个表的触发器被加密
触发器有一个Encryption选项,把这个选项改成false,就可以查看代码了。
⑨ sql server 2005怎么给单个数据库加密
我觉得这个是最基本的数据加密啊! Access都可以做到的SQL不会做不到吧 最佳答案: ACCESS只是做为一个文件,安全性由文件本身来控制的,但SQL做为大型数据库,本身设计就不是为移动方便而且,所以他的安全性,是由服务器硬件来控制的。 这好比,你对保险柜的安全性,是靠保险柜本身来控制的,比如钥匙,铁皮强度,但你的家具,床柜什么的,其安全性是由你家房间,大门来控制的,不能让家具自己来承担安全责任。 但是,你使用某个家且,安全性可由单个家且控制,所以,SQL数据在单独使用时,是通过程序的安全性来控制,SQL物理文件,你不能设置成说你不能附加回到SQL上,不能复制带走,不能从后台SQL中查看数据表。。。 其实你设置一个不让被人附加或者还原就行了。你创建的时间就可以设置特定用户。