AdministraciónArchivos de Configuración
Configuración de Seguridad
Configura los ajustes relacionados con la seguridad para tu instancia de Gigantics, incluyendo claves de sesión y cifrado.
Propiedades de Configuración
Las propiedades de configuración de seguridad en tu archivo config/default.yaml controlan la gestión de sesiones y el cifrado de datos:
secretSessionKey: session secret
encryptionKey: my-secret-keyDetalles de las Propiedades
secretSessionKey
- Tipo: Cadena
- Predeterminado:
'session secret' - Descripción: Clave secreta usada para firmar cookies de sesión. Debe ser una cadena única y aleatoria en producción.
encryptionKey
- Tipo: Cadena
- Predeterminado:
'my-secret-key'(desarrollo) o generada aleatoriamente (producción) - Descripción: Clave usada para cifrar datos sensibles en la aplicación.
Ejemplos
Configuración de Desarrollo
secretSessionKey: session secret
encryptionKey: my-secret-keyConfiguración de Producción
secretSessionKey: 'una-clave-secreta-muy-larga-y-aleatoria-para-sesiones'
encryptionKey: 'otra-clave-secreta-muy-larga-y-aleatoria-para-cifrado'Generando Claves Seguras
Para entornos de producción, deberías generar claves aleatorias seguras:
Usando OpenSSL
# Genera una cadena aleatoria de 32 caracteres
env OPENSSL_CONF=/etc/ssl/openssl.cnf openssl rand -base64 32
# Genera una cadena aleatoria de 64 caracteres
env OPENSSL_CONF=/etc/ssl/openssl.cnf openssl rand -hex 32Usando Node.js
# Genera una cadena aleatoria usando Node.js
node -e "console.log(require('crypto').randomBytes(32).toString('hex'));"Mejores Prácticas
- Claves Únicas: Usa claves diferentes para
secretSessionKeyyencryptionKey - Longitud de Claves: Usa al menos 32 caracteres para cada clave
- Aleatoriedad: Genera claves usando generadores criptográficamente seguros
- Almacenamiento: Almacena las claves de forma segura y nunca las comitees a control de versiones
- Entornos: Usa diferentes claves para desarrollo, staging y producción
- Rotación: Rota regularmente las claves de cifrado en producción
Configuración Específica por Entorno
La aplicación usa automáticamente diferentes claves predeterminadas basadas en el entorno:
- Desarrollo: Usa claves predeterminadas fijas para conveniencia
- Producción: Genera claves aleatorias para seguridad
- Prueba: Usa claves específicas para test
Puedes verificar tu entorno con:
echo $NODE_ENVProbando Cambios de Configuración
Después de modificar la configuración de seguridad:
- Reinicia la aplicación:
./gig stop ./gig start - Los usuarios pueden ser desconectados y necesitar reautenticarse
- Prueba que las sesiones funcionan correctamente
- Verifica que los datos cifrados aún pueden ser descifrados
Nota que cambiar las claves de cifrado puede hacer que los datos previamente cifrados sean ilegibles, así que ten cuidado al rotar claves en producción.