Kimlik doğrulama, veritabanında kaynak kullanmak veya dataları kullanmak isteyen kişilerin giriş yöntemlerinin incelenmesidir.
Veritabanında Var Olan Şifre Korumaları:
-Şifreler veritabanında şifrelenmektedir. AES şifreleme standardına göre şifrelenmektedir.
-Şifrelerin complexiteleri değiştirelebilinir. Yani oluşturulacak şifrelerde bazı şartlar aranabilir. Örneğin içinde 2 harf 3 sayı olsun gibisinden.
-Denenen şifreler arasında deneme süresi konulur. Eğer kullanıcı ilk üç denemesinde bilemez ise diğer denemeler arasında zaman farkı konur. Bu zaman farkı sayesinde ekstradan deneme veya tekrar tekrar deneme engellenir.
-Veritabanındaki şifrelerde büyük küçük harf uyumu aranır.
-Girilen şifreler tersi olmayan fonksiyonlara sokulur.
Şifre Oluşturulması:
Bir kullanıcı yaratılması ve bu kullanıcıya şifre atanması aşağıdaki gibidir. Önce normal bir kullanıcı yaratılır. Sonra bu kullanıcıya şifre atanır.
CREATE USER berke IDENTIFIED BY password;
GRANT CREATE SESSION TO berke IDENTIFIED BY password;
Şifreyi değiştirmek için aşağıdaki sorguyu kullanabiliriz.
ALTER USER berke IDENTIFIED BY password;
Şifre Yönetimi:
Şifre yönetimi aşırı önemlidir. Eğer her çalışan için ayrı bir kullanıcı oluşturuluyorsa kullanıcılara atanan şifrelerin sürekliliği profillerle yönetilir. Kullanıcıların profillerindeki şifreyle ilgili özellikler aşağıdaki sayfada verilmiştir.
-failed_login_attempts
-password_life_time
-password_reuse_time
-password_reuse_max
-password_lock_time
-password_grace_time
-password_verify_function
Yukarıdaki profil değerlerimizin neler olabileceği aşağıdaki dokümanda bulunmaktadır.
http://docs.oracle.com/cd/E11882_01/network.112/e36292/authentication.htm#DBSEG99805
Örnek Profil Yaratılması:
DROP PROFILE "DEFAULT" CASCADE;
CREATE PROFILE "DEFAULT" LIMIT
SESSIONS_PER_USER UNLIMITED
CPU_PER_SESSION UNLIMITED
CPU_PER_CALL UNLIMITED
CONNECT_TIME UNLIMITED
IDLE_TIME UNLIMITED
LOGICAL_READS_PER_SESSION UNLIMITED
LOGICAL_READS_PER_CALL UNLIMITED
COMPOSITE_LIMIT UNLIMITED
PRIVATE_SGA UNLIMITED
FAILED_LOGIN_ATTEMPTS 10
PASSWORD_LIFE_TIME UNLIMITED
PASSWORD_REUSE_TIME UNLIMITED
PASSWORD_REUSE_MAX UNLIMITED
PASSWORD_LOCK_TIME UNLIMITED
PASSWORD_GRACE_TIME UNLIMITED
PASSWORD_VERIFY_FUNCTION NULL;
Eğer bir grup çalışana bir tane kullanıcı veriliyorsa bu kullanıcıların güvenlik yönetimi kendi üzerlerinden yapılabilir; çünkü bu kullanıcıyla bunların güvenlik seviyeleri veya özellikleri değiştirilebilinir.
Kullanıcıların sahip oldukları şifre ve profil bilgilerini bu komutla bulabiliriz.
DBA'leri Şifrelerini Kullandırtarak Veritabanına Sokmak:
Oracle veritabanında SYSDBA ve SYSOPER yetkileri verilmiş kullanıcıların şifreleri veritabanına özgü dosyalarda korunmaktadırlar.
Kullanıcıların sahip oldukları şifre ve profil bilgilerini bu komutla bulabiliriz.
select username,profile,account_status,lock_date,authentication_type from dba_users;
DBA'leri Şifrelerini Kullandırtarak Veritabanına Sokmak:
Oracle veritabanında SYSDBA ve SYSOPER yetkileri verilmiş kullanıcıların şifreleri veritabanına özgü dosyalarda korunmaktadırlar.
Hiç yorum yok:
Yorum Gönder