oAlexandre Toys

Gerador de Django SECRET_KEY

Uma chave de 50 caracteres no formato exato que o Django espera, pronta para copiar para o seu .env.

Atualizado em por Alexandre Klostermann

SECRET_KEY

50 caracteres, mesmo alfabeto de get_random_secret_key(). Gerada no seu navegador; nada é enviado.

Como configurar a SECRET_KEY

Nunca deixe a chave escrita no settings.py de um repositório. Leia de uma variável de ambiente:

# settings.py
import os

SECRET_KEY = os.environ["DJANGO_SECRET_KEY"]

E defina a variável no ambiente ou em um arquivo .env que esteja no .gitignore:

# .env
DJANGO_SECRET_KEY=cole-a-chave-gerada-aqui

Gerando pelo terminal

Se já tiver o Django instalado, o próprio framework gera a chave:

python -c "from django.core.management.utils import get_random_secret_key; print(get_random_secret_key())"

Esta página é útil quando você está em outra máquina, configurando um deploy no painel de um provedor ou ainda não tem o ambiente Python pronto.

Boas práticas

  • Uma chave diferente para cada ambiente: local, homologação e produção.
  • Se a chave vazou ou foi commitada por engano, gere outra e troque imediatamente.
  • Mantenha DEBUG = False em produção. Com DEBUG ligado, páginas de erro podem expor configurações.

Perguntas frequentes

O Django usa a SECRET_KEY para assinar cookies de sessão, tokens de redefinição de senha, mensagens e qualquer dado que precise de assinatura criptográfica. Quem tiver a chave consegue forjar sessões e se passar por outros usuários.

Sim. A ferramenta usa o mesmo alfabeto e o mesmo comprimento de 50 caracteres da função get_random_secret_key(), que o Django chama ao criar um projeto com startproject.

Não é recomendado. Use uma chave por ambiente e carregue a de produção a partir de variável de ambiente ou de um gerenciador de segredos. A chave nunca deve ser commitada no repositório.

Todas as sessões ativas são invalidadas e os usuários precisam entrar de novo. Links de redefinição de senha já enviados deixam de funcionar. Se precisar rotacionar sem derrubar sessões, use a configuração SECRET_KEY_FALLBACKS, disponível a partir do Django 4.1.

Outras ferramentas

Gerador de Senha Segura