RESTABLECER UNA CONTRASEÑA DE CUENTA ORACLE

PREGUNTAS
¿Cómo restablezco una contraseña para un usuario en Oracle?
¿Cómo restauro una contraseña de usuario si la cuenta ha caducado?
¿Cómo cambio la contraseña de un usuario en Oracle?
¿Cómo recupero una contraseña perdida en Oracle?
Cómo conectarse a Oracle cuando olvidó su contraseña.
Cómo desbloquear una cuenta y restablecer una contraseña.

SINTOMAS
(A) Un usuario desea restablecer la contraseña de su cuenta vencida al mismo valor.
(B) Un usuario ha olvidado su contraseña y, por lo tanto, quiere establecer una nueva.
(C) Un usuario desea desbloquear su cuenta estableciendo la misma contraseña o una nueva.

SOLUCIÓN
(A) Un usuario desea restablecer la contraseña de su cuenta vencida al mismo valor.

COL SYSTIMESTAMP FOR A35;
SELECT SYSTIMESTAMP FROM DUAL;

   SYSTIMESTAMP
   -----------------------------------
   19-DEC-17 10.10.42.743229 AM +03:00

COL USERNAME FOR A15 
COL ACCOUNT_STATUS FOR A15
COL LOCK_DATE FOR A10 
COL EXPIRE_DATE FOR A10 
COL PROFILE  FOR A10
SELECT USERNAME, ACCOUNT_STATUS, LOCK_DATE, EXPIRY_DATE, PROFILE
FROM DBA_USERS WHERE ACCOUNT_STATUS LIKE '%GRACE%';

   USERNAME    ACCOUNT_STATUS  LOCK_DATE  EXPIRY_DATE        PROFILE
   ----------- --------------- ---------- ------------------ ----------
   DBANDTECH   EXPIRED(GRACE)             22-NOV-17          DEFAULT

COL RESOURCE_NAME FOR A25 
COL RESOURCE_TYPE FOR A10
COL LIMIT FOR A10 
SELECT * FROM DBA_PROFILES WHERE PROFILE='DEFAULT' AND
 RESOURCE_NAME IN ('PASSWORD_LIFE_TIME');

   PROFILE    RESOURCE_NAME             RESOURCE_T LIMIT
   ---------- ------------------------- ---------- ----------
   DEFAULT    PASSWORD_LIFE_TIME        PASSWORD   180

COL "PASSWORD RESET" FOR A65 
SELECT 'ALTER USER ' || NAME || ' IDENTIFIED BY VALUES ' || q'[']' ||
 PASSWORD || q'[';]' "PASSWORD RESET" 
FROM USER$ WHERE NAME IN (SELECT USERNAME 
FROM DBA_USERS WHERE ACCOUNT_STATUS LIKE '%GRACE%');

   PASSWORD RESET
   -----------------------------------------------------------------
   ALTER USER DBANDTECH IDENTIFIED BY VALUES '7E7BE47C1556211D';

COL USERNAME FOR A15 
COL ACCOUNT_STATUS FOR A15
COL LOCK_DATE FOR A10 
COL EXPIRE_DATE FOR A10 
SELECT USERNAME, ACCOUNT_STATUS, LOCK_DATE, EXPIRY_DATE  
FROM DBA_USERS WHERE USERNAME IN ('DBANDTECH');

   USERNAME        ACCOUNT_STATUS  LOCK_DATE  EXPIRY_DATE
   --------------- --------------- ---------- ------------------
   DBANDTECH       OPEN                       17-JUN-18

El EXPIRY_DATE de la cuenta se extendió por los próximos 6 meses.

NOTA
Para la versión 12c necesita la columna SPARE4 en lugar de PASSWORD.

SET LINES 300 
SET PAGES 999
COL NAME FOR A10 
COL SPARE4 FOR A70
SELECT NAME, SPARE4 FROM USER$ WHERE NAME='SYS';

NAME       SPARE4
---------- ----------------------------------------------------------------------
SYS        S:8164DBB935ECB37899F3374318AEAAEB4F7805BE7435E312CF2120E2C808;T:06020
           6C4B3544A55E6DF33AB3CC0E93F03F8AC39EBAA0838A865BAA537BC4CC9A839F1D7372
           97D9513F60FEF6B694877D7CE9DA0084377294DB7B4EAC3E4A47AFBE70EBD2B5BB4F11
           045ABF19EADA98E

SET LONG 200000000
SELECT DBMS_METADATA.GET_DDL('USER','SYS') FROM DUAL;

DBMS_METADATA.GET_DDL('USER','SYS')
--------------------------------------------------------------------------------

   ALTER USER "SYS" IDENTIFIED BY VALUES 'S:8164DBB935ECB37
899F3374318AEAAEB4F7805BE7435E312CF2120E
2C808;T:060206C4B3544A55E6DF33AB3CC0E93F
03F8AC39EBAA0838A865BAA537BC4CC9A839F1D7
37297D9513F60FEF6B694877D7CE9DA008437729
4DB7B4EAC3E4A47AFBE70EBD2B5BB4F11045ABF1
9EADA98E'
      TEMPORARY TABLESPACE "TEMP"

(B) Un usuario ha olvidado su contraseña y, por lo tanto, quiere establecer una nueva.

ALTER USER DBANDTECH IDENTIFIED BY DBANDTECH;

CONNECT DBANDTECH/DBANDTECH
Connected.

SHO USER
USER is "DBANDTECH"

(C) Un usuario desea desbloquear su cuenta estableciendo la misma contraseña o una nueva.

COL USERNAME FOR A15 
COL ACCOUNT_STATUS FOR A15
COL LOCK_DATE FOR A10 
COL EXPIRE_DATE FOR A10 
SELECT USERNAME, ACCOUNT_STATUS, LOCK_DATE, EXPIRY_DATE  
FROM DBA_USERS WHERE USERNAME IN ('DBANDTECH');

   USERNAME        ACCOUNT_STATUS  LOCK_DATE  EXPIRY_DATE
   --------------- --------------- ---------- ------------------
   DBANDTECH       LOCKED(TIMED)   22-NOV-17  17-JUN-18

-- Usando la misma contraseña
ALTER USER DBANDTECH ACCOUNT UNLOCK;

-- Nueva contraseña
ALTER USER DBANDTECH IDENTIFIED BY DBANDTECHNEW ACCOUNT UNLOCK;

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *