Desbloqueio de usuario Oracle  e mudança do tempo de expiração da senha
Autor: Jeff-DBA | Publicado: 2012-01-13T18:38:00-08:00

Estou de volta galera!! Esse ano promete. Estou trabalhando firme com Oracle e outros SGBDs. Não vou deixar de lado o objetivo da principal do blog que é ajudar a galera sobre informática. Porém, a enfase tem sido Banco de Dados...Aqui vai uma dica simples que aprendi no serviço e acredito que muitas vezes isso pode vir a ocorrer no nosso dia-a-dia.O esquecimento da senha...Cenário:O usuário chega para o DBA e fala:&nbsp;-Não consigo logar no sistema.Acho que meu usuário está bloqueado...Oq fazer nessa hora??Segue abaixo oque fazer, super simples.&nbsp;Caso, vc esteja usando a versão 11g (outras também), no final vem uma dica para verificar o tempo de inatividade do uso da senha e como altera-lá.Quando um usuário tenta logar no Banco de dados Oracle por muitas vezes digitando a senha errada, o este usuário ficará bloqueado. Para fazer o desbloqueio do mesmo, o DBA após logar como system terá duas (02) opções:&nbsp;Na primeira ele estará alterando a senha do usuário e desbloqueando a conta.1) - A pessoa não lembra mais senha, por exemplo use esse comando:

ALTER USER "NOME DO USUARIO" IDENTIFIED BY "NOVA SENHA" ACCOUNT UNLOCK;

Na segunda, a conta será apenas desbloqueada sem alteração da senha.

2) A pessoa lembrou a senha correta por exemplo, use esse comando:
ALTER USER "NOME DO USUARIO" ACCOUNT UNLOCK;


---&nbsp;Para vc que esta usando o oracle 11g ou até inferior:

Existe na versão 11g uma regra que define que a senha ficará inativa após 180 por padrão (somente no 11g).&nbsp;
Por este motivo, pode-se trocar este parametro e definir que a senha ficará ativa sem limite de tempo.

Vamos visualizar e trocar esse parametro:
Após connectar como sys:

SQL&gt; selecet username, profile from dba_users where user_name= upper('nome_usuario');
USERNAME&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PROFILE------------------------------ ------------------------------USUARIO&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;DEFAULTApós, vamos ver a DBA_PROFILES e ver o limite do profile:SQL&gt; select resource_name, limit from dba_profileswhere resouce_name = 'PASSWORD_LIFE_TIME';SQL&gt;&nbsp;select&nbsp;RESOURCE_NAME, LIMIT&nbsp;from&nbsp;dba_profileswhere&nbsp;RESOURCE_NAME='PASSWORD_LIFE_TIME';RESOURCE_NAME&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; LIMIT-------------------------------- ----------------------------------------PASSWORD_LIFE_TIME&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 180Observe que o valor&nbsp; LIMIT estará setado como 180 (Caso esteja, como UNLIMITED então não é necessário fazer alterações).Vamos alterar o limite agora.SQL&gt; ALTER PROFILE default LIMIT password_life_time UNLIMITED;profile alteread...Pronto! Agora, você pode dar uma outra visualizada para garantir que a alteração está feita.SQL&gt; select resource_name, limit from dba_profileswhere resouce_name = 'PASSWORD_LIFE_TIME';RESOURCE_NAME&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; LIMIT-------------------------------- ----------------------------------------PASSWORD_LIFE_TIME&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; UNLIMITED

Observe que a alteração também poderia ser feita para um outro valor, como por exemplo 90 dias (3 meses). Verifique com atenção como deve ficar esse valor.
O ideal também seria a criação de outros profiles para cada um ter um valor diferente, dependo das regras de segurança da empresa é claro... Mas, isto fica para outro post. :D

Mas, se tiverem pressa , segue aqui um bom link para estudo:
http://www.dartanghan.com.br/oracle-plsql/oracle-date-functions/

Vlw pessoal, estou voltando em 2012 com o mesmo problema de tempo de 2011, mas, assim que possível, estarei postando referente ao nosso objetivo maior que é a certificação ok?