Alterar uma senha no Oracle Database é um processo bastante simples. No entanto, por razões de segurança, pode ser importante manter um registro das senhas anteriores. Essa prática não é necessariamente recomendada, pois pode comprometer a segurança se essas informações forem indevidamente expostas, mas existem cenários onde pode ser útil.
Nota importante: As informações a seguir são destinadas a profissionais que conhecem bem a administração do Oracle e as implicações de segurança associadas. A execução inadequada dessas tarefas pode ter implicações sérias para a segurança e integridade do seu banco de dados.
Passo 1: Conectando ao Oracle como usuário sys
Primeiro, é necessário conectar ao Oracle como o usuário sys
. No prompt de comando, você deve digitar o seguinte:
sqlplus / as sysdba
Passo 2: Obtendo o Hash da senha atual
Para obter o hash da senha atual em versões do Oracle 11g e posteriores, use o seguinte comando SQL:
SELECT name, spare4 FROM sys.user$ WHERE name = 'USUARIO_ALVO';
Onde ‘USUARIO_ALVO’ é o nome do usuário para o qual você quer alterar a senha. Este comando retornará o hash da senha atual, que você pode guardar para referência futura.
Passo 3: Alterando a senha
Agora, vamos proceder à alteração da senha. Para isso, utilizaremos o seguinte comando:
ALTER USER USUARIO_ALVO IDENTIFIED BY NOVA_SENHA;
Substitua ‘USUARIO_ALVO’ pelo nome do usuário e ‘NOVA_SENHA’ pela nova senha que você deseja usar.
Passo 4: Restaurando a senha anterior usando o hash
Suponhamos que, por alguma razão, você precise restaurar a senha anterior. Se você salvou o hash da senha, pode fazer isso sem precisar conhecer a senha em si. Aqui está como fazer isso:
- Primeiro, assegure-se de que você está conectado ao Oracle como usuário
sys
.
sqlplus / as sysdba
- Agora, você pode usar o hash da senha para restaurar a senha anterior. O comando SQL necessário será algo como:
ALTER USER USUARIO_ALVO IDENTIFIED BY VALUES 'VALOR_HASH';
Substitua ‘USUARIO_ALVO’ pelo nome do usuário e ‘VALOR_HASH’ pelo hash da senha que você salvou.
Este comando não irá redefinir a senha para uma nova senha que você fornecer, mas para a senha que corresponde ao hash que você especificou. Dessa forma, mesmo sem conhecer a senha original, você ainda pode restaurar a senha anterior.
Conclusão
Este artigo forneceu um guia passo a passo para alterar a senha de um usuário no Oracle, salvar o hash da senha para segurança e como usar esse hash para restaurar a senha anterior, se necessário. A segurança do banco de dados é de suma importância e o manejo das senhas dos usuários deve ser feito com cuidado. Ao manipular hashes de senha, sempre certifique-se de que eles estão adequadamente protegidos para evitar qualquer comprometimento de segurança.