10.5支持本地數(shù)據(jù)庫加密(即Db2 native database encryption),但是目前文檔還不夠完善,沒有提供具體的命令和參考配置以方便用戶快速入手。
創(chuàng)新互聯(lián)公司專注于噶爾企業(yè)網(wǎng)站建設,自適應網(wǎng)站建設,商城網(wǎng)站建設。噶爾網(wǎng)站建設公司,為噶爾等地區(qū)提供建站服務。全流程按需定制網(wǎng)站,專業(yè)設計,全程項目跟蹤,創(chuàng)新互聯(lián)公司專業(yè)和態(tài)度為您提供的服務
正如Db2信息中心所說,創(chuàng)建一個本地加密庫,有兩個必不可少的步驟:
創(chuàng)建keystore文件
使用'ENCRYPT'選項創(chuàng)建數(shù)據(jù)庫
下面是具體的步驟及命令:
1. 創(chuàng)建keystore文件
1.1 使用stash文件創(chuàng)建keystore文件
$ /home2/db2ins35/sqllib/gskit/bin/gsk8capicmd_64 -keydb -create -db ccardskeystore.p12 -pw Str0ngPassw0rd -strong -type pkcs12 -stash
1.2 下面是創(chuàng)建的stash文件和keystore文件
/home2/db2ins35/tst_encrypt> ls -al
total 16
drwxr-xr-x 2 db2ins35 db2iadm 256 Nov 16 09:45 .
drwxr-xr-x 12 db2ins35 db2iadm 4096 Nov 16 09:45 ..
-rw------- 1 db2ins35 db2iadm 0 Nov 16 09:37 ccardskeystore.p12
-rw------- 1 db2ins35 db2iadm 129 Nov 16 09:37 ccardskeystore.sth
1.3 更新dbm cfg使用上上面創(chuàng)建的keystore文件:
/home2/db2ins35/tst_encrypt> db2 "update dbm cfg using keystore_type pkcs12 keystore_location /home2/db2ins35/tst_encrypt/ccardskeystore.p12"
DB20000I The UPDATE DATABASE MANAGER CONFIGURATION command completed
successfully.
/home2/db2ins35/tst_encrypt> db2 get dbm cfg | grep -i keystore
Keystore type (KEYSTORE_TYPE) = PKCS12
Keystore location (KEYSTORE_LOCATION) = /home2/db2ins35/tst_encrypt/ccardskeystore.p12
2. 使用'ENCRYPT'選項創(chuàng)建數(shù)據(jù)庫
注意:
1) 使用'ENCRYPT'創(chuàng)建數(shù)據(jù)庫時,Db2會自動為該數(shù)據(jù)庫產(chǎn)生master key并加入到keystore文件
2) 目前不支持對現(xiàn)有數(shù)據(jù)的加密。如果要對一個現(xiàn)有的數(shù)據(jù)庫加密,可以先備份,然后使用加密選項把備份恢復到一個新庫。
2.1 創(chuàng)建加密數(shù)據(jù)庫
/home2/db2ins35/tst_encrypt> db2 create db mydb encrypt
DB20000I The CREATE DATABASE command completed successfully.
2.2 你可以看到自動設置的ENCRLIB和ENCROPTS值:
/home2/db2ins35/tst_encrypt> db2 get db cfg for mydb | grep -i encr
Encryption Library for Backup (ENCRLIB) = libdb2encr.a
Encryption Options for Backup (ENCROPTS) = CIPHER=AES:MODE=CBC:KEY LENGTH=256
Encrypted database = YES
原文鏈接:
https://www.ibm.com/developerworks/community/blogs/IMSupport/entry/Hands_on_example_for_a_new_encrypted_database?lang=en