Pular para o conteúdo principal

Redefinindo Sua Senha de Administrador 🗝️

Se você esqueceu sua senha de administrador, não se preocupe! Abaixo você encontrará guias passo a passo para redefinir a senha do administrador em implantações Docker 🐳 e instalações locais do Open WebUI.

Para Implantações Docker 🐳

Siga estes passos para redefinir a senha de administrador do Open WebUI quando implantado usando Docker.

Etapa 1: Gerar um Novo Hash de Senha 🔐

Primeiro, você precisa criar um hash bcrypt para sua nova senha. Execute o seguinte comando em sua máquina local, substituindo your-new-password pela senha que você deseja usar:

htpasswd -bnBC 10 "" your-new-password | tr -d :\n

Nota: A saída incluirá um hash bcrypt com caracteres especiais que precisam ser cuidadosamente tratados. Qualquer caractere $ no hash deverá ser triplicamente escapado (substituído por \\\) para ser usado corretamente na próxima etapa.

Etapa 2: Atualizar a Senha no Docker 🔄

Em seguida, você atualizará a senha em sua implantação Docker. Substitua HASH no comando abaixo pelo hash bcrypt gerado na Etapa 1, certificando-se de triplicar o escape para quaisquer caracteres $. Além disso, substitua [email protected] pelo endereço de e-mail vinculado à sua conta de administrador.

Importante: O comando a seguir pode não funcionar em todos os casos. Se não funcionar para você, tente o comando alternativo abaixo dele.

docker run --rm -v open-webui:/data alpine/socat EXEC:"bash -c apk add sqlite && echo UPDATE auth SET password=\HASH\ WHERE email=\[email protected]\; | sqlite3 /data/webui.db", STDIO

Para Instalações Locais 💻

Se você tem uma instalação local do Open WebUI, eis como você pode redefinir sua senha de administrador diretamente no seu sistema.

Etapa 1: Gerar um Novo Hash de Senha 🔐

Assim como no método Docker, comece gerando um hash bcrypt para sua nova senha usando o seguinte comando. Lembre-se de substituir your-new-password por sua nova senha:

htpasswd -bnBC 10 "" your-new-password | tr -d :\n

Etapa 2: Atualizar a Senha Localmente 🔄

Agora, navegue até o diretório open-webui em sua máquina local. Atualize sua senha substituindo HASH pelo hash bcrypt da Etapa 1 e [email protected] pelo e-mail da sua conta de administrador e execute:

sqlite3 backend/data/webui.db "UPDATE auth SET password=HASH WHERE [email protected];"

Método Alternativo de Docker

Se você tiver problemas com o método acima. Tive problemas ao encadear os comandos bash no alpine/socat, já que o bash não existe.

  1. Execute o Linux alpine conectado ao volume open-webui.

    docker run -it --rm -v open-webui:/path/to/data alpine

    /path/to/data depende das suas configurações de volume.

    1. Instale apache2-utils e sqlite:

      apk add apache2-utils sqlite
    2. Gere o hash bcrypt:

      htpasswd -bnBC 10 "" your-new-password | tr -d :
    3. Atualize a senha:

      sqlite3 /path/to/data/webui.db
      UPDATE auth SET password=HASH WHERE email=admin@example.com;
      -- sair do sqlite: [Ctrl + d]

Excluindo Todos os Dados

Se você quiser redefinir completamente o Open WebUI—incluindo todos os dados de usuário, configurações e senhas—siga estes passos para remover o arquivo webui.db.

Etapa 1: Localizar webui.db em Seu Ambiente Python

Se você não sabe onde webui.db está localizado (especialmente se estiver usando um ambiente virtual), você pode descobrir seguindo estes passos:

  1. Ative seu ambiente virtual (se aplicável).

  2. Abra um shell Python: python

  3. Execute o seguinte código dentro do shell Python:

   import os
import open_webui

# Mostre onde o pacote Open WebUI está instalado
print("Open WebUI está instalado em:", open_webui.__file__)

# Construa um caminho potencial para webui.db (comumente localizado em data/webui.db)
db_path = os.path.join(os.path.dirname(open_webui.__file__), "data", "webui.db")
print("Caminho potencial para webui.db:", db_path)

# Verifique se webui.db existe nesse caminho
if os.path.exists(db_path):
print("webui.db encontrado em:", db_path)
else:
print("webui.db não encontrado em:", db_path)
  1. Examine a saída:
    • Se o arquivo for encontrado, você verá seu caminho exato.
    • Caso contrário, você pode precisar realizar uma busca mais ampla no sistema de arquivos (por exemplo, usando find no Linux ou uma busca global de arquivos no Windows/Mac).

Etapa 2: Excluir webui.db

Depois de localizar o arquivo, remova-o usando um comando semelhante a:

   rm -rf /path/to/your/python/environment/lib/pythonX.X/site-packages/open_webui/data/webui.db

Aviso: Excluir o webui.db removerá todos os dados armazenados, incluindo contas de usuário, configurações e senhas. Faça isso apenas se realmente desejar começar do zero!