Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

1.2K
Visualizações
"Django-insecure" en clave secreta en settings.py en django

Después de crear un nuevo proyecto con django-admin startproject mi settings.py contiene:

 SECRET_KEY = 'django-insecure <actual secret key>'

Nunca antes había visto "django-insecure" en una clave secreta. ¿Qué significa?

over 4 years ago · Santiago Trujillo
3 Respostas
Responde à pergunta

0

Esta es una advertencia visible de que cualquier clave codificada es insegura desde el primer momento. La idea es utilizar diferentes claves en el desarrollo y la producción.

Puede generar fácilmente una nueva clave usando un generador en línea como este

En su servidor, agregue su SECRET_KEY a las variables de entorno y estas líneas a su configuración.py

 import os SECRET_KEY = os.environ['SECRET_KEY']

Personalmente, no prefiero guardar claves en archivos, pero eso también es posible.

Tenga en cuenta que

over 4 years ago · Santiago Trujillo Relatório

0

en django 3.2 es mejor crear su propia clave secreta para producción (asegúrese de que sea lo suficientemente segura) y moverla a sus variables de entorno y también es mejor usar esta clave secreta insegura solo para fines de desarrollo. Una SECRET_KEY segura es así:

  • La clave secreta debe ser un valor aleatorio grande y debe mantenerse en secreto.
  • Asegúrese de que la clave utilizada en producción no se utilice en ningún otro lugar y evite enviarla al control de código fuente. Esto reduce la cantidad de vectores desde los cuales un atacante puede adquirir la clave.
  • En lugar de codificar la clave secreta en su módulo de configuración, considere cargarla desde una variable de entorno:

Aquí hay un ejemplo:

 import os SECRET_KEY = os.getenv("SECRET_KEY", "django-insecure <actual secret key>")
over 4 years ago · Santiago Trujillo Relatório

0

¿Por qué la clave es insegura cuando se crea automáticamente? Parece ser mucho más seguro que una llave pensada por un humano.

Se genera utilizando un proceso bien conocido a partir de una fuente de entropía cuya calidad y seguridad no pueden garantizarse (por Django). Esta es la razón aparente de esto; consulte https://docs.djangoproject.com/en/3.2/ref/checks/#security

security.W009 : Su SECRET_KEY tiene menos de 50 caracteres, menos de 5 caracteres únicos, o tiene el prefijo 'django-insecure-' lo que indica que Django la generó automáticamente . Genera una SECRET_KEY larga y aleatoria, de lo contrario, muchas de las funciones críticas para la seguridad de Django serán vulnerables a los ataques.

Más importante aún, cualquier clave secreta incrustada en un archivo de configuración es tan segura como los mecanismos de control de acceso de su sistema de archivos. Los archivos de configuración de Django son un lugar obvio para buscar la clave secreta.

Es más seguro mantener sus claves en un almacén de claves protegido criptográficamente o en un HSM , y luego pasar a Django su clave secreta a través de una variable de entorno; ver Dónde almacenar claves secretas DJANGO .

Y, sin importar cómo las administre, debe generar sus claves secretas usted mismo utilizando hardware que controle y un mecanismo + fuente de entropía en el que pueda confiar al 100%. (Si no tiene opciones, considere tirar algunos dados como fuente de dígitos aleatorios).

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda