Regresando la contraseña original a un usuario

En este punto, quiero mostrar el cómo podemos cambiar una contraseña de un usuario y después, regresar la contraseña original al mismo usuario.

Muchas veces, necesitamos conectarnos con un usuario, para ver cómo es que está reaccionando dicho usuario al ejecutar un proceso o una simple consulta. Esto, bajo la limitante de que no tenemos la contraseña del usuario y no está él en la oficina para proporcionarla y finalmente, no podemos modificarla.

Así, el cambio se hace bastante fácil de la siguiente forma:

1. Para efectos de la prueba, muestro que si puede entrar con el password actual:

SQL> conn salt/prueba
Connected.
SQL>

2. Entrando ya como sysdba, obtenemos la contraseña actual. Esta, se guarda encriptada en la vista dba_users. Del listado siguiente, vamos a tomar de ejemplo el esquema SALT.

SQL> select username, password
  2  from   dba_users
  3  order by username;
USERNAME             PASSWORD
-------------------- ----------------
ADMAUD               A101B2757316EC78
DBSNMP               E066D214D5421CCC
DIP                  CE4A36B8E06CA59C
OUTLN                4A3BA55E08595C81
PERFSTAT             DBD0ACDB404EA126
SALT                 4195FE23CF28FA4E SYS                  4790272FCF800D71
SYSTEM               9887149C9890214A
TSMSYS               3DF26A8B17D0F29F
USGM                 37CF159A85F11E79
10 rows selected.

3. Guardamos la contraseña en un bloc de notas o en el mismo portapapeles, de acuerdo al uso que vayamos a hacer con la primera.

4. A continuación, ya con la contraseña previa guardada, ejecutamos el comando para cambiar la contraseña al usuario:

SQL> alter user salt
  2  identified by nuevo;
User altered.
SQL> conn salt/nuevo
Connected.
SQL> ....comandos....

5. Una vez que ya no ocupemos el usuario SALT, tendremos que regresar la contraseña anterior y con eso, el dueño de la cuenta, podrá conectarse sin problema.

SQL> conn / as sysdba
Connected.
SQL> alter user salt identified by values '4195FE23CF28FA4E';
User altered.
SQL> conn salt/prueba
Connected.
SQL>

Si la información de este post te ha sido de utilidad o quieres que agregue algo más, deja por favor un comentario, contestaré a la brevedad.

Anuncios

6 Responses to Regresando la contraseña original a un usuario

  1. Hola Orlando, ésta información ya no aplica para la versión 11G, es correcto? para ésta versión existe un paso diferente o simplemente ya no podrá ser válida?

  2. Orlando Olguín Olvera says:

    Hola Eva.

    Sigue siendo igual al menos en la 11g, mira:

    TYPE C_INSTANCE CREATED ARCHIVE VERSION STARTUP PAR FLASH PLATFORM_NAME
    —————— —————- ———- ———— —————– ———- — —– ——————————
    DB LAB 10/04/2014 NOARCHIVELOG NO Linux IA (32-bit)
    INST LAB 11.2.0.3.0 02/02/2016 NO

    Mi usuario OOO, tiene la contraseña:

    USERNAME PASSWORD OBJ_QTY TOTAL_MB ACCOUNT_STATUS CREATED DEFAULT_TABLESPACE TEMPORARY_TABLESPACE
    —————————— —————- ——- ———– —————- ———- ————————- ————————-
    OOO 8883A63960B55FA5 5 3 OPEN 19/01/2016 OOO TEMP

    Luego, pruebo mi conexión:

    SQL> conn ooo/prueba
    Connected.

    Y le cambio la contraseña:

    SQL> alter user ooo identified by prueba2;

    User altered.

    Y finalmente, le regreso la contraseña original:

    SQL> alter user ooo identified by values ‘8883A63960B55FA5’;

    User altered.

    para probar una vez más mi conexión:

    SQL> conn ooo/prueba
    Connected.

    Espero te sirva.

    Orlando.

  3. Ok gracias por contestar, No tuve la oportunidad de revisarlo en 11g. pero lo revisé en 12c y al parecer en esta versión no se muestra.

    VERSION
    —————–
    12.1.0.2.0

    USERNAME PASSWORD
    —————————— ———————————–
    EVA
    EVARAQUEL

    Gracias.

  4. Orlando Olguín Olvera says:

    Hola Eva.

    También en la 12c funciona, repito el proceso aquí:

    1.
    TYPE C_INSTANCE CREATED ARCHIVE VERSION STARTUP PAR FLASH PLATFORM_NAME
    —————— —————- ——— ———— ————— ——— — —– —————————————-
    DB HEIMDAL 21-AUG-15 ARCHIVELOG 64-bits NO Linux x86 64-bit
    INST HEIMDAL 12.1.0.2.0 30-JAN-16 NO Oracle Database 12c Enterprise Edition

    2.
    SQL> create user ooo identified by otraprueba;

    User created.

    3.
    USERNAME PASSWORD OBJ_QTY TOTAL_MB ACCOUNT_STATUS CREATED DEFAULT_TABLESPACE TEMPORARY_TABLESPACE
    —————————— —————- ——- ———– —————- ——— ————————- ————————-
    OOO 27D9B817580426B8 0 OPEN 03-FEB-16 SYSTEM TEMP

    4.
    SQL> conn ooo/otraprueba
    Connected.

    5.
    SQL> alter user ooo identified by metallica;

    User altered.

    6.
    SQL> conn ooo/metallica
    Connected.

    7.
    SQL> conn / as sysdba
    Connected.
    SQL> alter user ooo identified by values ’27D9B817580426B8′;

    User altered.

    8.
    SQL> conn ooo/otraprueba
    Connected.

    La clave es que la vista DBA_USERS ya no muestra la contraseña como ya bien apuntaste, pero la puedes ver de su tabla USER$.

    Orlando.

  5. Hola Orlando, tienes razón, era por el uso de la vista dba_users. También leí que lo siguiente se puede hacer siempre y cuando se tiene permisos de DBA

    alter session current_schema=’esquema a acceder’;

    y con esto tambien puedes acceder a la cuenta de un usuario y ver sus objetos.

    :D

  6. Orlando Olguín Olvera says:

    Hola Eva.

    Claro, puedes usar esa instrucción también.

    El punto es ver cómo puedes trabajar con una contraseña para regresarla después sin problemas.

    Orlando.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: