Să ne imaginam următorul scenariu: schimbăm parola unui utilizator Oracle iar după ce am schimbat-o trebuie să o schimbam înapoi cu cea veche dar fără să știm care a fost parola veche, cum putem face acest lucru?

SQL> create user test identified by parolaveche;

User created.

SQL>  grant create session to test;

Grant succeeded.

SQL> conn sys as sysdba
Enter password:
Connected.


Pentru a reseta parola vom avea nevoie să interogăm coloana spare4 din view-ul user$

SQL> select spare4 from user$ where name='TEST';

SPARE4
--------------------------------------------------------------------------------
S:899D2FE574666CE843331623A9B3B360B033EFC54AD74AA8958CD585FCB1


Verificăm că ne putem conecta cu utilizatorul test

SQL> conn test/parolaveche
Connected.


Acum schimbăm temporar parola utilizatorului test

SQL> conn sys as sysdba
Enter password:
Connected.
SQL>  alter user test identified by parolanoua;

User altered.
SQL> conn test/parolaveche
ERROR:
ORA-01017: invalid username/password; logon denied

Warning: You are no longer connected to ORACLE.
SQL> conn sys as sysdba
Enter password:
Connected.

SQL> alter user test identified by values 'S:899D2FE574666CE843331623A9B3B360B033EFC54AD74AA8958CD585FCB1';

User altered.


Verificăm că funcționează:

SQL> conn test/parolaveche
Connected.

Pană la versiunea 11G hash-ul parolei era ținut în tabela dba_users. Pentru compatibilitate, utilizatorii cu care vine implicit instalat Oracle, hash-ul parolei este păstrat în ambele locații.

SQL> select USERNAME, PASSWORD_VERSIONS from dba_users where username in ('TEST','SYSTEM');

USERNAME                PASSWORD
----------------------- --------
TEST                        11G
SYSTEM                  10G 11G


Asta înseamnă că hash-ul parolei din dba_users este null pentru utilizatorul test iar pentru utilizatorul system acesta se găsește în coloana password din dba_users cat și în spare4 din user$

Lasă un răspuns

Completează mai jos detaliile despre tine sau dă clic pe un icon pentru autentificare:

Logo WordPress.com

Comentezi folosind contul tău WordPress.com. Dezautentificare / Schimbă )

Poză Twitter

Comentezi folosind contul tău Twitter. Dezautentificare / Schimbă )

Fotografie Facebook

Comentezi folosind contul tău Facebook. Dezautentificare / Schimbă )

Fotografie Google+

Comentezi folosind contul tău Google+. Dezautentificare / Schimbă )

Conectare la %s