Oracle Password Verify Function

Oracle Password Verify Function

Kullanıcı şifrelerinin komplex şifreler olması güvenlik açısından çok önemli bir konudur.Kullanıcı şifrelerini kontrol etmek için password verify fonksiyonunu kullanabiliriz.Bu fonksiyon sys scheması altında oluşturulur ve şifre değiştirme işleminde yeni şifreyi kontrol ederek gereksinimleri karşılayıp karşılamadığını kontrol eder.Dosyayı text editörle açıp içine bakabilirsiniz. username ve şifre aynı olamaz,en az 8 karakter olmalı, en az bir harf ve sayı içermeli vb kontrolleri bizim yerimize yapacaktır.

Bu fonskiyon 3 tane parametre (username,new pass,old_pass) alıp boolean değer(mantıksal true ya da false) döndürür.Oracle ın default Password Verify fonksiyonunu oracle home altında $ORACLE_HOME/rdbms/admin/utlpwdmg.sql ismiyle bulabilirsiniz.Utlpwdmg.sql dosyasını sqlplustan çalıştıralım. İstersek üzerinde editleme yaparak kendi kontrollerimizi ekleyip tekrar compile edebiliriz.

SQL> @/oracle/app/product/11.2.0.4/db/rdbms/admin/utlpwdmg.sql
Function created.
Grant succeeded.
Profile altered.
Function created.
Grant succeeded.

Çalıştırdık ve fonksiyonumuz compile edildi, artık kullanabiliriz.Fonksiyonumuzu doğrudan kullanıcılarla ilişkilendiremiyoruz, kullanıcıları sınıflandırdığımız profile denen oracle nesnelerine atama yapacağız, ve böylece o profildeki her userın şifre değişikliği bu fonksiyonla denetlenmiş olacak.

Örneğin DEVELOPER_PROFILE diye bir profilimiz olsun, ve bu profile dahil olan userların (developerların) şifre değişikliklerini fonksiyonumuzla kontrol etmek isteyelim.Bunun için profile fonksiyonumuzu atamamız gerekiyor.

SQL> Alter profile DEVELOPER_PROFILE limit password_verify_function verify_function_11G;

Artık bu profildeki her userın şifre değişikliği fonksiyonumuzla kontrol edilecektir.

Geri almak istersek NULL diyip aynı komutu çalıştıabiliriz.

SQL> Alter profile DEVELOPER_PROFILE limit password_verify_function NULL;

Hangi usera hangi profile atanmış aşağıdaki sorgu ile görebiliriz.

SQL> SELECT USERNAME, PROFILE FROM DBA_USERS ORDER BY 2,1;

Umarım faydalı olur.

Tagged: , , , , , , ,

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir