注册
达梦半透明加密
技术分享/ 文章详情 /

达梦半透明加密

Azarias 2025/04/03 35 0 0

半透明加密
用户密钥:创建用户时可以指定存储加密的密钥,这个密钥就是为了进行半透明加密时使用的。创建用户时指定密钥的方式如下:
一、图形化界面
1.png
二、命令

create user "TEST" identified by "123456789" encrypt by "enc_003"; --此时,enc_003为密钥口令

列的半透明加密设置
如果在创建用户时并没有指定存储加密密钥,系统也会自动为用户生成一个默认的加密密钥。如果在创建表或修改表时指定对表列进行半透明加密,DM 会使用用户的存储加密密钥对数据进行加密。
一、图形化界面(使用DM管理工具,右键表名,选择“修改)
2.png

二、命令

CREATE TABLE TEST_ENCRYPT7(C1 INT, C2 INT ENCRYPT WITH DES_ECB MANUAL);

测试
一、不加密创建表TEST_ENCRYPT7

CREATE TABLE TEST_ENCRYPT7(C1 INT, C2 INT);

向表中插入数据

insert into TEST.TEST_ENCRYPT7 VALUES (1,2);
insert into TEST.TEST_ENCRYPT7 VALUES (3,4);
commit;

使用test用户和sysdba用户分别查看数据:

select * from TEST.TEST_ENCRYPT7;

查询结果均为

行号       C1          C2
---------- ----------- -----------
1          1           2
2          3           4

二、设置列加密
3.png
查看数据:
test查看数据:

行号       C1          C2
---------- ----------- -----------
1          1           2
2          3           4

sysdba查看数据:

行号       C1          C2
---------- ----------- -----------
1          1           NULL
2          3           NULL

三、使用sysdba插入数据

insert into TEST.TEST_ENCRYPT7 VALUES (5,6);
commit;

SQL> select * from test01.test_encrypt7;
行号       C1          C2
---------- ----------- -----------
1          1           NULL
2          3           NULL
3          5           6

使用test查看:

SQL> select * from test_encrypt7;
行号       C1          C2
---------- ----------- -----------
1          1           2
2          3           4
3          5           NULL

可以看出,非透明加密模式只能看到自己插入的数据。

评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服