¿Cómo generar un secret key en Django? | Programador Web Valencia

¿Cómo generar un secret key en Django?

1 minuto

Python

A la hora de desplegar tu web, o servicios, por medio de Django en un servidor llega el momento de generar un secret key. Y lo más complejo posible. Fortalecerá la seguridad de tu sitio dejándote dormir por las noches como un bebé. En la red hay diferentes generadores online de esta clave, pero personalmente no me fío. ¿Quién dice que no se almacenan en una base de datos? Lo mejor es generar la clave directamente en tu equipo. No es tan complejo como aparenta.

Los pasos a seguir son sencillos.

1) Abre una ventana del terminal y crea un documento nuevo

touch generador_django.py

2) Edita el documento con tu editor favorito o por medio del terminal.

nano generador_django.py

y pega lo siguiente.

"""
Pseudo-random django secret key generator.
- Does print SECRET key to terminal which can be seen as unsafe.
"""

import string
import random

# Get ascii Characters numbers and punctuation (minus quote characters as they could terminate string).
chars = ''.join([string.ascii_letters, string.digits, string.punctuation]).replace('\'', '').replace('"', '').replace('\\', '')

SECRET_KEY = ''.join([random.SystemRandom().choice(chars) for i in range(50)])

print(SECRET_KEY)

3) Ejecuta el script

python3 generador_django.py

¡Y listo!

Se mostrará una cadena aleatoria de 50 carácteres.

_Z~I/9Vb8l#+~PtD>;PJPgW?eh^+_x#xyZ3x~D%%I<0mo-&Jq-

Ahora solo queda sustituirla en settings.py de Django.

Actualización (Erick Navarro)

Una forma rápida sería ejecutando en el terminal:

openssl rand -base64 32

Gracias ;)

Esta obra está bajo una Licencia Creative Commons Atribución-NoComercial-SinDerivadas 4.0 Internacional.

Atribución/Reconocimiento-NoComercial-SinDerivados 4.0 Internacional

¿Me ayudas?

Comprame un café
Pulsa sobre la imagen

No te sientas obligado a realizar una donación, pero cada aportación mantiene el sitio en activo logrando que continúe existiendo y sea accesible para otras personas. Además me motiva a crear nuevo contenido.

Comentarios

{{ comments.length }} comentarios

Nuevo comentario

Nueva replica  {{ formatEllipsisAuthor(replyComment.author) }}

Acepto la política de Protección de Datos.

Escribe el primer comentario

Tal vez también te interese...