it-swarm.it

Come sbarazzarsi del messaggio ORA-28002 la password scadrà entro 6 giorni?

Ho un utente che riceve un ORA-28002 che indica che la password scadrà entro sei giorni. Ho eseguito il seguente:

ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED; 

Ma quando provo ad accedere come utente, il messaggio è ancora lì. Eseguendo questo:

select * from dba_profiles where RESOURCE_NAME LIKE 'PASSWORD_LIFE_TIME';

mostra che i valori sono stati davvero cambiati in ILLIMITATO.

18
bernd_k

La password è stata contrassegnata come "SCADUTA" o contrassegnata con un "DATA SCADENZA" in dba_users. Dovrai cambiarlo. Puoi ripristinarlo con la stessa password. Il modo più semplice sarebbe impostare la password "per valori". Questo di solito ignora il controllo della cronologia.

12:28:33 SQL> select * from dba_users where username = 'MYUSER1';

USERNAME                          USER_ID PASSWORD
------------------------------ ---------- ------------------------------
ACCOUNT_STATUS                   LOCK_DATE          EXPIRY_DATE
-------------------------------- ------------------ ------------------
DEFAULT_TABLESPACE             TEMPORARY_TABLESPACE           CREATED
------------------------------ ------------------------------ ------------------
PROFILE                        INITIAL_RSRC_CONSUMER_GROUP
------------------------------ ------------------------------
EXTERNAL_NAME
--------------------------------------------------------------------------------
MYUSER1                               338 66856982BE5CD23F
OPEN
USERS                          TEMP                           17-JAN-11
DEFAULT                        DEFAULT_CONSUMER_GROUP



Elapsed: 00:00:00.03
12:28:43 SQL> alter user myuser1 password expire;

User altered.

Elapsed: 00:00:00.00
12:29:11 SQL> select * from dba_users where username = 'MYUSER1';

USERNAME                          USER_ID PASSWORD
------------------------------ ---------- ------------------------------
ACCOUNT_STATUS                   LOCK_DATE          EXPIRY_DATE
-------------------------------- ------------------ ------------------
DEFAULT_TABLESPACE             TEMPORARY_TABLESPACE           CREATED
------------------------------ ------------------------------ ------------------
PROFILE                        INITIAL_RSRC_CONSUMER_GROUP
------------------------------ ------------------------------
EXTERNAL_NAME
--------------------------------------------------------------------------------
MYUSER1                               338 66856982BE5CD23F
EXPIRED                                             17-JAN-11
USERS                          TEMP                           17-JAN-11
DEFAULT                        DEFAULT_CONSUMER_GROUP



Elapsed: 00:00:00.03
12:29:14 SQL>

Il formato di questo è "alter USER utente identificato dai valori 'hash da dba_users.password';"

[TEST] C:\>sqlplus system

SQL*Plus: Release 10.2.0.4.0 - Production on Mon Jan 17 12:18:16 2011

Copyright (c) 1982, 2007, Oracle.  All Rights Reserved.

Enter password:

Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

new: showmode BOTH
12:18:17 SQL> Prompt end of LOGIN.SQL
end of LOGIN.SQL
12:18:17 SQL> create user myuser1 identified by mypassword1;

User created.

Elapsed: 00:00:00.01
12:18:21 SQL> grant connect, resource to myuser1;

Grant succeeded.

Elapsed: 00:00:00.01
12:18:30 SQL> connect myuser1/mypassword1
Connected.
12:18:39 SQL> connect system
Enter password:
Connected.
12:18:51 SQL> alter user myuser1 password expire;

User altered.

Elapsed: 00:00:00.00
12:19:05 SQL> connect myuser1/mypassword1
ERROR:
ORA-28001: the password has expired


Changing password for myuser1
New password:
Retype new password:
Password changed
Connected.
12:19:16 SQL> connect myuser1/mypassword1
ERROR:
ORA-01017: invalid username/password; logon denied


Warning: You are no longer connected to Oracle.
12:19:21 SQL> connect system
Enter password:
Connected.
12:19:34 SQL> alter user myuser1 identified by mypassword1;

User altered.

Elapsed: 00:00:00.01
12:19:49 SQL> alter user myuser1 identified by mypassword1 password expire;

User altered.

Elapsed: 00:00:00.01
12:20:26 SQL> select username, password from dba_users where username = 'MYUSER1';

USERNAME                       PASSWORD
------------------------------ ------------------------------
MYUSER1                        66856982BE5CD23F

Elapsed: 00:00:00.01
12:20:36 SQL> alter user myuser1 identified by values '66856982BE5CD23F' ;

User altered.

Elapsed: 00:00:00.01
12:21:01 SQL> connect myuser1/mypassword1
Connected.
12:21:13 SQL> exit
Disconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
17
REW

Trova le 4 query seguenti ed esegui queste query dal database di sistema.

//For seeing Full user details
SELECT profile FROM dba_users WHERE username = 'SYSTEM';

//This query is used to change the password life time to unlimited
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED; 

//This query is used to chagne the default password.
alter user SYSTEM identified by "system";
15
user2645333

Un collega che utilizza Toad ha visualizzato l'account indicato come visualizzato nei Browser dello schema in Utenti.

Ci siamo riusciti facendo clic destro sblocca utente. Nella finestra di dialogo Alter user abbiamo reinserito la vecchia password e deselezionato la casella di controllo Password bloccata.

5
bernd_k

È necessario modificare nuovamente la password per rendere effettivo il nuovo limite.

3
Leigh Riffel

È necessario modificare l'account utente. Innanzitutto connettiti al tuo account sys e da lì puoi eseguire il passaggio di seguito indicato:

alter user practice identified by password;

questo risolverà il tuo problema ...

2
laltu banerjee

So che questo è vecchio, ma per coloro che utilizzano Oracle SQL Developer seguire questi passaggi:

  • Utilizzare un altro utente per accedere a qualsiasi connessione al database in uso, è possibile utilizzare il nome utente predefinito "sistema" o "sys" con qualunque password ci sia.

  • Apri la struttura delle connessioni e trova il nodo "Altri utenti" e aprilo in questo modo:

enter image description here

  • Trova il tuo nome utente nelle note figlio in "Altri utenti" e fai clic con il pulsante destro del mouse per modificare l'utente in questo modo:

enter image description here

  • Digita la nuova password e Deseleziona la password scaduta, quindi applica. Fai di nuovo clic con il pulsante destro del mouse su Modifica utente per vedere se le impostazioni sono state modificate, se lo desideri.
1
Saad A