16.06.2008

Oracle guvenlik, Database Vault

Önce database vault nasıl install ederiz biraz ondan bahsedelim.

10g R2 standart yada RAc üzerine install etmemiz mümkündür. İki account yaratacaz bunlar Database Vault Owner ve Database Vault Account Manager. database vault owner mevburi install ederken belirtiyoruz. Account manager ise opsiyonel.
Dv_owner rolunde olan database vault owner accountudur.DV_ACCTMGR ise account manager userımızdır.

1gb memory 500mb bos alan ise gerekli minumum şartlar diyebiliriz.operating sistem sartları ise 10g R2 ile aynıdır.enterprise edition Oracle Database 10g release 2 (10.2.0.4) gerekli diyebiliriz. Ayrıca instance parametrelerinden REMOTE_LOGIN_PASSWORDFILE mutlaka EXCLUSIVE or SHARED olmamlıdır.

enterprise manager,database,isqlplus,listener stop olmalıdır.

:/runInstaler ile instalasyona basladığımızda bize dv_owner userını soracaktır.installasyonun sonunda DVCA ile bitiriyoruz.

Database vault bağlanmak için

http://host_name:(port genelde 1158 olur)/dva

Böylece database vault yönetim ekranına ulaşmış oluruz.
Daha sonra
  1. In the Administration sayfasında Database Vault Feature Administration, seçelim Realms.

  2. In the Realms sayfasında, select Oracle Data Dictionary from the list and then click Edit.

  3. In the Edit Realm: Oracle Data Dictionary page, altında Realm Authorizations, click Create.

  4. In the Create Realm Authorization Page, from the Grantee list, select SYSTEM [USER].

  5. For Authorization Type, select Owner.

  6. Çıkalım Authorization Rule Set at şeçmeden

  7. Click OK.

    In the Edit Realm: Oracle Data Dictionary page, SYSTEM should be listed as an owner under the Realm Authorizations.

  8. Click OK to return to the Realms page.

  9. To return to the Administration page, click the Database Instance instance_name link over Realms.

sistem accountu ile bağlanıp Hr schemasına ulaşalım

sqlplus system
SQL> Enter password: password

SQL> SELECT FIRST_NAME, LAST_NAME, SALARY FROM HR.EMPLOYEES WHERE ROWNUM < 10;

FIRST_NAME LAST_NAME SALARY
-------------------- ------------------------- ----------
Donald OConnell 2600
Douglas Grant 2600
Jennifer Whalen 4400
Michael Hartstein 13000
Pat Fay 6000
Susan Mavris 6500
Hermann Baer 10000
Shelley Higgins 12000
William Gietz 8300

9 rows selected.
Görüldüğü üzere system accountu rahat bir şekilde Hr schemasına ulaşıyor.

şimdi realm create edelim

Realms schemayı schema objelerini korumak için tasarlanmıştır.

  1. In the Realms page of Oracle Database Vault Administrator, click Create.

  2. In the Create Realm page, General, enter HR Realm after Name.

  3. status kısmında , Enabled is selected seçili olsun

  4. Audit Options, Audit On Failure is seçelim

  5. OK.

Şimsi Hr. employees tablosunun güvenliğini sağlayalım

  1. In the Realms sayfasında, select HR Realm from the list and then click Edit.

  2. In the Edit Realm: HR Realm page, scroll to Realm Secured Objects and then click Create.

  3. In the Create Realm Secured Object sayfasında aşağıdaki ayarlar gelir.

    • Object Owner: Select HR from the list.

    • Object Type: Select %.

    • Object Name: EMPLOYEES.

  4. Click OK.

  5. In the Edit Realm: HR Realm page, click OK.

Şimdide authorized işlemlerini gerçekleştirelim.

Yeni bir user yaratalım

  1. SQL> CONNECT dbvacctmgr
    Enter password: password

    SQL> CREATE USER zekeriya IDENTIFIED BY password;
  2. Connect as SYSTEM privilege, and then grant zekeriya aşağıdaki hakları verelim.

    SQL> CONNECT SYSTEM
    Enter password: password

    SQL> GRANT CREATE SESSION, SELECT ANY TABLE TO zekeriya;
Sqlplus ta zekeriya userı hr.employees tablosunu select etmeye kalktığında select edemez zira tablo realm tarafında korunur.
  1. In the Realms page of Database Vault Administrator, select the HR Realm in the list of realms, and then click Edit.
  2. In the Edit Realm: HR Realm page, scroll down to Realm Authorizations and then click Create.

  3. In the Create Realm Authorization page, under Grantee, select zekeriya[USER] from the list.

  4. Under Authorization Type, select Owner.

    Owner olarak şeçmek artık zekeriya userınıda bu yetkileri hr.employees tablosundaki yetkili olması ve görmesi demektir.

  5. Under Authorization Rule Set, select , because rule sets are not needed to govern this realm.

  6. Click OK.

Şimdi test edelim

System userı ile bağlanıyoruz ve select etmeye kaltığımızda görmezken
sqlplus system
Enter password: password

SQL> SELECT FIRST_NAME, LAST_NAME, SALARY FROM HR.EMPLOYEES WHERE ROWNUM <10;

Error at line 1:
ORA-01031: insufficient privileges
SQL> CONNECT zekeriya
Enter password: password

SQL> SELECT FIRST_NAME, LAST_NAME, SALARY FROM HR.EMPLOYEES WHERE ROWNUM <10;

FIRST_NAME LAST_NAME SALARY
-------------------- ------------------------- ----------
Donald OConnell 2600
Douglas Grant 2600
Jennifer Whalen 4400
Michael Hartstein 13000
Pat Fay 6000
Susan Mavris 6500
Hermann Baer 10000
Shelley Higgins 12000
William Gietz 8300

9 rows selected.


Ve tabiki bütün bu işlerin raporunu almakta mümkündür

Yetkili DV userı bağlanıp
  1. In the Database Vault Reports page, scroll down to Database Vault Auditing Reports and select Realm Audit.
  2. Click Run Report.


Demesi kimlerin başarılı kimlerin başarısız olduklarını listeleyecektir.

Hiç yorum yok: