TRANSPARENT DATA ENCRYPTION

Transparent Data Encryption Veritabanı içerisindeki verilerin Kolon, Tablo veya Tablespace bazında şifrelenerek veri güvenliğinin amaçlayan bir teknolojidir. Bunun için Oracle Wallet kullanılması gerekmektedir. Bu işlemler Oracle Enterprice Manager Cloud Control üzerinden kolay bir şekilde yapılabilmektedir.

Öncelikle SYS ile Cloud Controle bağlanıyoruz.

Security kısmından Tranparent Data Encryption kısmını seçiyoruz.

Configure keystore diyerek devam ediyoruz.

Host Credential kısmına Linux oracle user ı ve password giriyoruz. File location kısmında ise sqlnet.ora dosyamızın olduğu yolu veriyoruz. Eğer sqlnet.ora dosyası o yolda yok ise oluşturuyoruz veya sample klasörü içerisindeki sqlnet.ora dosyasını oraya taşıyabiliriz. buradaki

Burada wallet yerini ayarlıyoruz. ben defaultta bıraktım ancak siz daha güvenli olsun diye root kısmında bir konuma alarak ve bu klasor için oracle kullanıcısına yetki vererek wallet oluşturabilirsiniz.

Oluşturduğumuz walleta password veriyoruz ve bu passwordu asla kaybetmemiz gerekiyor. Burada olulturacağımız wallet ın autologin özelliği ile ilgili seçenekler var ben standart wallet oluşturacağım, siz isterseniz autologin veya Local autologin özelliğinde wallet ta oluşturabilirsiniz. Next ile geçiyoruz.

Bu aşamada keyimiz oluşacak ve open durumuna gelecek ayrıca backuplarımızda verdiğimiz password ile şifrelenerek alıncak, show sql bölümünde çalışacak olan sqlleri görüyoruz.

wallet ve keyimiz oluşturuldu artık bu wallet kullanılarak bir tabloyu , bir tablonun kolonlarını veya tablespace alanını komple şifreleyebiliriz.

Örneğin aşağıda bir tablonun bir kolnu şifreli olarak create edelim;

CREATE TABLE testaes
(
id number,
isim varchar2(64) encrypt using 'AES192' SALT
)

Burada Şifreleme algoristması olarak aşağıdaki algoritmalardan biri seçilebilir defaultta AES 192 dir.

  • 3DES168
  • AES128
  • AES192
  • AES256

Aynı tablo userinde birden fazla kolon üzerinde şifreleme yapacaksak tüm kolonların şifreleme algoritmaları aynı olması gerekmektedir.

Var olan bir tablo tDE ile şifrelenecekse

alter table FRK.TEST modify (ad encrypt)

şifreleme yapılırken SALT default ta gelir, eger bu alan index yapılcak ise NO SALT olarak oluşturulmalı veya alter edilerek NO SALT a çevrilmeilidir. (NO SALT opsiyonu encrypt tablespace oluşturuken kullanılamaz)

alter table FRK.TEST modify (ad encrypt no salt)

Wallet i close ve open yapmak için aşağıdaki komutlar kullanılır.

alter system set encryption wallet close identified by "password"
alter system set encryption wallet open identified by "password"