Oracle 11g: Case sensitive password

Con 11g rel1 Oracle ha introdotto password con distinzione tra maiuscole e minuscole per gli account di database basati su SHA1 (Secure Algoritmo hash).

Questa funzione può essere abilitata modificando il parametro init.ora SEC_CASE_SENSITIVE_LOGON.

Per impostazione predefinita, questo parametro è impostato su false; impostando il parametro su TRUE tutte le nuove password faranno distinzione tra maiuscole e minuscole. Tutte le password esistenti, create in precedenza, rimarranno senza distinzione tra maiuscole e minuscole finché non vengono modificate.

Gli utenti importati da un database 10g hanno un valore PASSWORD_VERSIONS di “10G” e mantengono il caso password insensibili indipendenti dall’impostazione del parametro SEC_CASE_SENSITIVE_LOGON.

Per abilitare o disabilitare le password con distinzione tra maiuscole e minuscole è necessario modificare il parametro init.ora.

ALTER system SET SEC_CASE_SENSITIVE_LOGON=TRUE scope=spfile;
ALTER system SET SEC_CASE_SENSITIVE_LOGON=FALSE scope=spfile;
Esempio:

Possiamo vedere la funzionalità della password con distinzione tra maiuscole e minuscole in funzione se tentiamo di connetterci al nuovo utente sia con la password corretta che con quella errata.

CONN / AS SYSDBA
ALTER SYSTEM SET SEC_CASE_SENSITIVE_LOGON = TRUE;
CREATE USER etica IDENTIFIED BY Etica;
GRANT CONNECT TO etica;
SQL> CONN etica/Etica
Connected.
SQL> CONN etica/etica
ERROR:
ORA-01017: invalid username/password; logon denied

Commutando il parametro di inizializzazione SEC_CASE_SENSITIVE_LOGON su FALSE siamo in grado di connetterci utilizzando entrambe le varianti della password.

CONN / AS SYSDBA
ALTER SYSTEM SET SEC_CASE_SENSITIVE_LOGON = FALSE;
SQL> CONN etica/etica
Connected.
SQL> CONN etica/Etica
Connected.
SQL>

Potrebbero interessarti anche...

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *