Pendahuluan
Pembuatan password user di oracle sudah menjadi standar bahwa password harus di buatkan unik atau ada varisi user huruf besar, huruf kecil, angka dan karakter khusus. Berikut list standar validasi password :
- Panjang Kata Sandi harus 8 karakter dan tidak lebih dari 15 karakter.
- Kata sandi harus memiliki satu nilai numerik.
- Kata sandi harus memiliki satu Huruf Kecil.
- Kata sandi harus memiliki satu Huruf Besar.
- Kata sandi harus memiliki satu karakter khusus.
Dari validasi di atas dapat kita simpulkan function atau prosedur apa yang cocok untuk user di atas.
Solusi
Berikut script prosedur untuk pembuatan validasi password user oracle
/* Formatted on 22/01/2022 23:38:03 (QP5 v5.252.13127.32847) */ CREATE OR REPLACE FUNCTION VALIDASI_PASSWORD (PARAM_PASSWORD IN VARCHAR2) RETURN VARCHAR2 IS L_IS_VALID VARCHAR2 (1); BEGIN IF 8 <= LENGTH (PARAM_PASSWORD) AND LENGTH (PARAM_PASSWORD) <= 15 THEN IF REGEXP_LIKE (PARAM_PASSWORD, '^.*[0-9]') THEN IF REGEXP_LIKE (PARAM_PASSWORD, '^.*[a-z]', 'c') THEN IF REGEXP_LIKE (PARAM_PASSWORD, '^.*[A-Z]', 'c') THEN IF REGEXP_LIKE (PARAM_PASSWORD, '^.*[!@#$%^&*()_]', 'c') THEN RETURN ''; ELSE RETURN 'Kata sandi tidak memiliki satu karakter khusus'; END IF; ELSE RETURN 'Kata sandi tidak memiliki satu Huruf Besar'; END IF; ELSE RETURN 'Kata sandi tidak memiliki satu Huruf Kecil'; END IF; ELSE RETURN 'Kata sandi tidak memiliki nilai numerik'; END IF; ELSE RETURN 'Panjang Kata Sandi Harus minimal 8 karakter dan maksimal 15 karakter dan panjang kata sandi Anda adalah' || ' ' || LENGTH (PARAM_PASSWORD); END IF; END VALIDASI_PASSWORD; /
Sekian tutorial untuk pembuatan validasi password user oracle, semoga bermanfaat.