Mot de passe user applicatif

Dans le cadre d’un mise en production ou d’exécution d’un script pour un schéma oracle, il  arrive parfois qu’on a pas le mot de passe de l’utilisateur qui doit exécuter le script.

 

Solution de contournement :

il faut donc :

1) Obtenir le mot de passe  de l’utilisateur en HEXADECIMAL ,

 

sqlplus /nolog

connect sys/syspwd as sysdba

select
‘alter user « ‘||username||' » identified by values  »’||extract(xmltype(dbms_metadata.get_xml(‘USER’,username)),’//USER_T/PASSWORD/text()’).getStringVal()|| »’;’ old_password
from
dba_users
where
username = ‘SCOTT’;

 

resultat :

 

alter user « SCOTT » identified by values ’52F32BF9047E398E’;

2) Modifier le mot de passe avec un alter user.

sqlplus /nolog

connect sys/syspwd as sysdba

 

alter user scott identified by scott

3)  Connexion et exécution des scripts

sqlplus /nolog

connect scott/scott

@execution_du_script.sql

4) Remise du mot de passe

sqlplus /nolog

connect sys/syspwd as sysdba

 

alter user « SCOTT » identified by values ’52F32BF9047E398E’;

Pourquoi cette solution me diriez vous ? :

Les mots de passe applicatifs sont parfois  présent dans plusieurs scripts  ou dans des fichiers de configurations en clair , réinitialiser un compte sans  avoir une connaissance fonctionnelle des applications de productions

peux provoquer des incidents majeurs  .

 

Post Comment

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *