Hurriyet

27 Aralık 2013 Cuma

Oracle Veritabanı: Veritabanında Şifre - Password

Authentication - Kimlik Doğrulama:

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.

Profil içerisindeki password_parameters olarak belirttiğimiz parametreler:

-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.

 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