En metod utan att använda "The Secure External Password Store" (vad det än kan vara) är att lägga till en RAW(16) kolumn i tabellen för att lagra ett hashat användarnamn och lösenord:
alter table mytable add password raw(16);
Lagra sedan det hashade användarnamnet och lösenordet så här:
insert into mytable (username, password, ...)
values (:username, dbms_obfuscation_toolkit.md5
(input => utl_i18n.string_to_raw
(upper(:username)||:password))
);
När en användare sedan försöker logga in med ett användarnamn och lösenord kan du kontrollera dem så här:
select 'OK'
from mytable
where username = :username
and password = dbms_obfuscation_toolkit.md5
(input => utl_i18n.string_to_raw
(upper(:username)||:password));
På så sätt kan ingen ta reda på vad det lagrade lösenordet är (annat än med brute force).