Geliştirilmiş güvenlik için, RMAN yedekleri şifrelenebilir. Şifreli yedekler, yetkisiz kişiler tarafından okunamaz. Geri dönüş için şifre yada wallet kullanımı gerekmektedir.
Yedeklerinizin tutulduğu ortama sizlerden başkaları da erişebiliyorsa , yedeklerinizin mutlaka şifreli olarak alınması gerekmektedir. Aksi takdirde yedekleriniz kötü niyetli kişiler tarafından kullanılıp , tüm verileriniz başka kişi yada firmalara gönderilebilir.
Rman ile iki türlü yedekler şifrelenebilir.
Bu opsiyon ile global güvenlik sağlanır. Alınan tüm yedekler şifrelenecektir.
Bu işlem için gerekli adımlar aşağıda belirtilmiştir.
Öncelikle wallet dizinini oluşturmanız gerekmektedir. $ORACLE_BASE set edildikten sonra , $ORACLE_BASE/admin/<veritabani_adi> dizini altında wallet şeklinde bir dizin oluşturun.
oracle ile
-bash-4.3$ mkdir $ORACLE_BASE/admin/TESTDB/wallet
SYS ile aşağıdaki şekilde şifre belirleyin :
SQL> alter system set encryption key identified by "welcome1"; System altered.
NOT : Veritabanı yeniden başladığında wallet’ı aktifleştirmek için aşağıdaki komutu kullanabilirsiniz. Wallet aktif olmadan şifreli yedek alınmayacaktır.
SQL> alter system set encryption wallet open identified by "welcome1";
Rman üzerinden yedeklerin şifreli olacağını belirtin :
-bash-4.3$ rman target / Recovery Manager: Release 11.2.0.4.0 - Production on Thu Oct 19 16:49:55 2017 Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved. connected to target database: TESTDB (DBID=2708277737) RMAN> configure encryption for database on; using target database control file instead of recovery catalog new RMAN configuration parameters: CONFIGURE ENCRYPTION FOR DATABASE ON; new RMAN configuration parameters are successfully stored Sonrasında alınacak tüm yedekler şifreli olacaktır. RMAN> backup full database tag ORCL_FULL format '/u01/backup/%d_%T_%s_%p_FULL'; Starting backup at 19-OCT-17 allocated channel: ORA_DISK_1 channel ORA_DISK_1: SID=1423 instance=TESTDB1 device type=DISK channel ORA_DISK_1: starting full datafile backup set channel ORA_DISK_1: specifying datafile(s) in backup set input datafile file number=00002 name=+DATA/testdb/datafile/sysaux.697.924949529 input datafile file number=00004 name=+DATA/testdb/datafile/users.703.924949531 input datafile file number=00001 name=+DATA/testdb/datafile/system.704.924949529 input datafile file number=00003 name=+DATA/testdb/datafile/undotbs1.700.924949531 channel ORA_DISK_1: starting piece 1 at 19-OCT-17 channel ORA_DISK_1: finished piece 1 at 19-OCT-17 piece handle=/u01/backup/TESTDB_20171019_3_1_FULL tag=ORCL_FULL comment=NONE channel ORA_DISK_1: backup set complete, elapsed time: 00:01:35 channel ORA_DISK_1: starting full datafile backup set channel ORA_DISK_1: specifying datafile(s) in backup set including current control file in backup set including current SPFILE in backup set channel ORA_DISK_1: starting piece 1 at 19-OCT-17 channel ORA_DISK_1: finished piece 1 at 19-OCT-17 piece handle=/u01/backup/TESTDB_20171019_4_1_FULL tag=ORCL_FULL comment=NONE channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01 Finished backup at 19-OCT-17
Bu opsiyon ile , sadece ilgili yedek şifrelenecektir. Rman sırasında şifre belirtilmelidir. Bu opsiyondaki sorun , şifreleme için gerekli şifre işlem sırasında gönderileceğinden açık şekilde görülmektedir. Script içine yazdığınızda , işletim sistemi erişimi olan bir kişi script içinden şifreyi alıp , restore yapabilir.
Rman ile yada script içinde aşağıdaki komut ile şifre belirleyip , yedeklemeyi başlatabilirsiniz.
RMAN> set encryption on identified by "welcome1" only; executing command: SET encryption
Sonrasında alınacak yedek şifrelenecektir.
Yedeklemede şifrelemeye ihtiyacınız olmadığı durumda aşağıdaki komut ile şifrelemenin yapılmamasını sağlayabilirsiniz.
RMAN> configure encryption for database off; old RMAN configuration parameters: CONFIGURE ENCRYPTION FOR DATABASE ON; new RMAN configuration parameters: CONFIGURE ENCRYPTION FOR DATABASE OFF; new RMAN configuration parameters are successfully stored
Rman varsayılan olarak şifreleme için AES128 algoritmasını kullanır. Dilerseniz bu algoritmayı aşağıdaki gibi değiştirebilirsiniz.
RMAN> CONFIGURE ENCRYPTION ALGORITHM 'AES256'; new RMAN configuration parameters: CONFIGURE ENCRYPTION ALGORITHM 'AES256'; new RMAN configuration parameters are successfully stored
Kullanılabilecek algoritmalara V$RMAN_ENCRYPTION_ALGORITHMS görüntüsünden ulaşabilirsiniz.