Pular para o conteúdo principal

🔐 Resetar Senha pelo Banco de Dados

Aprenda como resetar a senha de um usuário diretamente pelo banco de dados do sistema.

Esse procedimento pode ser utilizado caso você perca o acesso de super admin ou precise redefinir a senha de algum usuário manualmente.

perigo

Atenção: este procedimento altera informações diretamente no banco de dados.

Antes de continuar, recomendamos fazer um snapshot da VPS. Assim, caso algum comando seja executado incorretamente, será possível restaurar o sistema para o estado anterior.


📑 Etapa 1: Acessar a VPS

Primeiro, acesse a sua VPS pelo terminal.

Caso ainda não saiba como acessar a VPS, veja o tutorial CLICANDO AQUI.


🔎 Etapa 2: Localizar os Dados do Banco

Antes de acessar o banco de dados, é necessário identificar as informações de conexão.

Acesse a pasta do backend da sua instalação:

home/deploy/NOME_DA_SUA_INSTANCIA/backend

Dentro dessa pasta, abra o arquivo .env e localize os seguintes dados:

DB_HOST=
DB_NAME=
DB_PASS=

Anote essas informações, pois elas serão utilizadas para acessar o banco de dados.

dica

Substitua NOME_DA_SUA_INSTANCIA pelo nome real da sua instalação.


🗄️ Etapa 3: Acessar o Banco de Dados

No terminal da VPS, execute o comando abaixo, substituindo os dados conforme as informações encontradas no arquivo .env:

psql -h SEU_DB_HOST -U SEU_DB_NAME -d SEU_DB_NAME

Após executar o comando, será solicitada a senha do banco.

Cole a senha informada no campo DB_PASS do arquivo .env e pressione Enter.

dica

Para colar a senha no terminal, copie a senha e clique com o botão direito do mouse dentro do terminal.

Se os dados estiverem corretos, você estará dentro do banco de dados do sistema.

Banco de Dados


👤 Etapa 4: Listar os Usuários do Sistema

Com o banco de dados aberto, execute o comando abaixo para listar os usuários cadastrados no sistema:

SELECT id, name, email, profile FROM "Users";

Banco de Dados

Localize o usuário que deseja alterar a senha e anote o e-mail e o ID desse usuário.


🚪 Etapa 5: Sair do Banco de Dados

Após identificar o usuário, saia do PostgreSQL executando o comando abaixo:

\q

Depois disso, você voltará para o terminal normal da VPS.


🔑 Etapa 6: Gerar uma Nova Senha Criptografada

Agora, navegue até a pasta do backend da sua instalação, basta colar comando abaixo no terminal:

cd homedeploy/NOME_DA_SUA_INSTANCIA/backend

Substitua NOME_DA_SUA_INSTANCIA pelo nome real da sua instalação.

Em seguida, execute o comando abaixo para gerar o hash da nova senha:

node -e "const bcrypt = require('bcryptjs'); bcrypt.hash('NovaSenha123', 8).then(console.log)"

Banco de Dados

O terminal retornará um código parecido com este:

$2a$08$XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Copie e anote esse código, pois ele será usado para atualizar a senha no banco.

aviso

O código gerado é o hash da senha. Ele deve ser copiado exatamente como apareceu no terminal.


🗄️ Etapa 7: Acessar Novamente o Banco de Dados

Agora, acesse novamente o banco de dados usando o comando abaixo:

psql -h SEU_DB_HOST -U SEU_DB_NAME -d SEU_DB_NAME

Quando a senha for solicitada, cole novamente a senha do campo DB_PASS.


🔄 Etapa 8: Atualizar a Senha do Usuário

Dentro do banco de dados, execute o comando abaixo, substituindo:

  • HASH_GERADO pelo hash gerado na etapa anterior;
  • EMAIL_DO_USUARIO pelo e-mail do usuário que terá a senha alterada.
UPDATE "Users"
SET "passwordHash" = 'HASH_GERADO'
WHERE email = 'EMAIL_DO_USUARIO';

Exemplo:

UPDATE "Users"
SET "passwordHash" = '$2a$08$XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
WHERE email = 'admin@seudominio.com';

Banco de Dados

Após executar o comando, o terminal deverá exibir:

UPDATE 1

Isso significa que a senha de 1 usuário foi alterada com sucesso.

aviso

Se aparecer UPDATE 0, nenhum usuário foi alterado. Nesse caso, verifique se o e-mail informado está correto.


✅ Finalização

Pronto! A senha do usuário foi resetada.

Agora você já pode acessar o sistema utilizando:

E-mail: EMAIL_DO_USUARIO
Senha: NovaSenha123

Após acessar o sistema, recomendamos alterar a senha novamente dentro do painel para uma senha segura e definitiva.

dica

Por segurança, evite manter a senha padrão NovaSenha123 após recuperar o acesso.