Oracle de Audit log, database de oluşturulan user' ların yapmış oldukları işlemlerin audit tabloları altında tutularak saklanması, ve gerek duyulduğunda bu tabloların izlenmesidir. Kullanıcıların yapabileceği işlemler yetki dahilinde; Alter, Insert, Update, Delete, Select, vs... olabilir. Kurumlar için db deki bilgilerin çok önemli olduğu bir gerçektir. Zaman zaman bu bilgiler kimi kullanıcılar tarafından dışarıya çıkarılabilir veya kötü amaçlarla da
kullanılabilir. Bu tür olumsuzlukların önüne geçebilmek için çeşitli yöntemler vardır. Bunlardan biri de audit log yöntemidir. Burada önemli olan, audit log mekanizmasını iyi kurgulamaktır.
Parametrenin durumunu sql/plus ile aşağıdaki gibi sorgulayabiliriz.
SQL> show parameter audit_trail;
NAME TYPE VALUE
_________ _______ ________
audit_trail string NONE
* AUDIT_TRAIL parametresinin alabileceği değerler şunlardır;
NONE, OS, XML, XML_EXTENDED, DB(default), DB_EXTENDED
NONE: DB auditing disable edilir. (init.ora dan audit_trail parametresini kaldırmak ile aynıdır)
OS: DB auditing enable edilir. Audit kayıtları işletim sistemi audit trailine kaydedilir.
XML: DB auditing enable edilir. Audit kayıtları işletim sistemi üzerinde XML dosyasına kaydedilir.
XML,EXTENDED: DB auditing enable edilir. Audit kayıtları işletim sistemi üzerinde XML dosyasına kaydedilir. SQLBIND ve SQLTEXT CLOB bilgileride kaydedilir.
DB: DB auditing enable edilir. Audit kayıtları veritabanı audit trailine kaydedilir.(SYS.AUD$ tablosuna kaydedilir).
DB,EXTENDED: DB auditing enable edilir. Audit kayıtları veritabanı audit trailine kaydedilir.(SYS.AUD$ tablosuna kaydedilir). aud$ tablosuna SQLBIND ve SQLTEXT CLOB bilgileride kaydedilir.
Value parametresinin değeri default olarak NONE veya FALSE olarak gelir. Bu da audit mekanizmasının devrede olmadığı ve audit log alınmadığı anlamına gelir. Oraclenin 10g sürümünden sonra bu parametre defaultta aktif ve değeri de DB olarak gelmeye başlamıştır.
"audit_trail" parametresi statik parametredir bu sebeple değişiklik yapıldığında etkin olabilmesi için, database in restart edilmesi gerekir.
** Audit log özelliğinin aktif edilmesi;
- Birinci yöntem, db'in init.ora parametre dosyasına "audit_trail=[VALUE]" satırının eklenmesi.
- İkinci yöntem ise, sql plus ile
SQL> alter system set audit_trail=DB scope=spfile;
System altered.
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL>startup
ORACLE instance started.
Total System Global Area 2020328192 bytes
Fixed Size 3176448 bytes
Variable Size 1357630522 bytes
Database Buffers 553648125 bytes
Redo Buffers 4873086 bytes
Database mounted.
Database opened.
SQL> show parameter audit_trail;
NAME TYPE VALUE
________ ______ _______
audit_trail string DB
Db restart oldu. Tekrar kontrol ettiğimizde parametrenin etkin olduğunu göreceğiz. Artık db'imiz default parametre ile audit log almaya başlayacaktır.
Alınan audit kayıtları; SYS.AUD$ viewinden görüntülenebilir.
SELECT * FROM SYS.AUD$;
Hiç yorum yok:
Yorum Gönder