GBase 8a 数据加密——密钥证书管理

密钥证书的管理需要管理员用户通过SQL方式处理。证书存放在config目录,集群环境下,gnode与gcluster都会生成相同密钥证书文件:

gnode:$GBASE_BASE/config/encryption.crt

gcluster:$GCLUSTER_BASE/config/encryption.crt

注意:

  • 建议对密钥证书进行备份,如果证书丢失会影响已有数据的解密操作;
  • 明文密钥创建完成后,即可对加密列做dml操作;密文密钥还需要open操作,方可对加密列做dml操作,关闭密钥后,所有对加密列的dml操作将会失效;
  • 钥证书只能创建一次,不能重复创建;
  • 密文密钥,须用户牢记口令,系统不记录口令。

1. 创建证书

语法:

CREATE ENCRYPTION CERTIFICATE IDENTIFIED BY  'password' [CONTENT  '密钥内容'];
  • 该语法可创建明文、密文密钥证书,如果password为空,则创建明文密钥证书,不要口令;如果password非空,则创建密文密钥证书,需要口令;密钥证书只有一份,不能重复创建;
  • CONTENT 是密钥内容关键字,可选项,如果不指定该关键字,则创建时由系统自动生成密钥;如果指定,则需要用户手动输入密钥,内容不做限制,最大支持128 字节;

2. 打开证书

        语法:

ALTER ENCRYPTION CERTIFICATE OPEN IDENTIFIED BY 'password';
  • 根据口令打开密文密钥证书,需要用户输入口令对证书解密获取加密密钥,才能对存储数据加密/解密。

3. 关闭证书

        语法:

ALTER ENCRYPTION CERTIFICATE CLOSE;
  • 证书关闭后无法对数据加密,会影响加密列的DML操作

4. 修改证书

        语法:

ALTER  ENCRYPTION CERTIFICATE IDENTIFIED BY 'old_pwd'  TO  'new_pwd';
  • 修改密文密钥口令,old_pwd、new_pwd均非空;
  • 为了提高口令的安全性,可以对原证书口令进行二次修改,修改口令不会改变加密密钥,只是使用新口令对原有密钥重新加密生成新证书;

5. 明文/密文密钥转换

        明文转密文语法:

ALTER  ENCRYPTION  CERTIFICATE IDENTIFIED BY  ''  TO  'password';

        密文转明文语法:

ALTER  ENCRYPTION  CERTIFICATE IDENTIFIED BY  'password'  TO  '';
  • password不能为空;
  • 数据加密所用密钥不变;

6. 显示证书状态:

        语法:

SELECT * FROM INFORMATION_SCHEMA.ENCRYPTION_CERTIFICATE_STATUS;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值