Oracle TDE(透明数据加密)

DB:11.2.0.4
TDE特性从10g开始提供。10g只能使用列加密,11g开始提供表空间加密。
如果使用列加密,那么Oracle的DataGuard,流,物化视图不可用,所涉及列的PK/FK也不可用。而表空间加密则不会有这些问题。

首先需要创建Wallet密钥:
a. 创建默认Wallet文件目录

点击(此处)折叠或打开

  1. mkdir $ORACLE_BASE/admin/<SID>/wallet
b. 创建密钥:

点击(此处)折叠或打开

  1. ALTER SYSTEM SET ENCRYPTION KEY IDENTIFIED BY "zaq12wsxCDE#$RFV";
c. 打开或关闭Wallet

点击(此处)折叠或打开

  1. ALTER SYSTEM SET ENCRYPTION WALLET OPEN IDENTIFIED BY "zaq12wsxCDE#$RFV";
  2. ALTER SYSTEM SET ENCRYPTION WALLET CLOSE IDENTIFIED BY "zaq12wsxCDE#$RFV";
d. 查看wallet状态

点击(此处)折叠或打开

  1. SELECT WRL_TYPE, WRL_PARAMETER, STATUS FROM GV$ENCRYPTION_WALLET;

WRL_TYPE   WRL_PARAMETER                                      STATUS
---------- -------------------------------------------------- ----------
file       /u01/app/oracle/admin/vlt/wallet                   CLOSED


创建加密表空间:

点击(此处)折叠或打开

  1. CREATE TABLESPACE ts_encrypted
  2. DATAFILE '' size 400K
  3. AUTOEXTEND ON
  4. ENCRYPTION USING 'AES256'
  5. DEFAULT STORAGE(ENCRYPT)
  6. /
查看创建结果

点击(此处)折叠或打开

  1. SELECT TS.name, ET.encryptedts, ET.encryptionalg
  2. FROM v$tablespace TS, v$encrypted_tablespaces ET
  3. WHERE TS.ts# = ET.ts#;

NAME                 ENCRYP ENCRYPTIONALG
-------------------- ------ --------------
TS_ENCRYPTED         YES    AES256

验证TDE结果:
当wallet处于Close状态时,查询加密表空间中的表:

点击(此处)折叠或打开

  1. select * from customers where rownum<11;
select * from customers where rownum<11
*
ERROR at line 1:
ORA-28365: wallet is not open

必须Open Wallet,才可以正常查询。

同时,如果在OS中使用strings命令查看数据文件,加密表空间将看到乱码,而没有加密过的数据文件可以看到明文。



来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/22621861/viewspace-1392148/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/22621861/viewspace-1392148/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值