desencriptador-env
v0.0.1
Published
Librería para desencriptar variables de entorno usando secretos cifrados y archivos .env
Readme
🔐 Librería para desencriptar variables de entorno con secretos cifrados
Esta librería permite desencriptar variables de entorno de forma segura utilizando claves secretas almacenadas en archivos .env.secret. Es útil para mantener datos sensibles protegidos en entornos de desarrollo, testeo o producción.
🚀 Instalación
Para instalar la librería con pnpm, primero compilá el proyecto y luego instalalo localmente desde la carpeta dist.
pnpm install
pnpm run buildEsto generará la carpeta dist/ con los archivos compilados.
📦 Usar en otro proyecto
- Desde el proyecto de destino, instalá la librería con la ruta absoluta hacia el directorio
dist:
pnpm install /home/ubuntu/proyecto/dist🧱 Configuración
En la raíz del proyecto donde vas a usar la librería, creá un archivo llamado decrypt.config.ts con la siguiente estructura:
// decrypt.config.ts
module.exports = {
nameSecret: 'SECRET_KEY',
urlSecretEnv: '/home/gabriel/parozlabs/demos/demo-1/test/secret/.env.secret',
urlEnv:
'/home/gabriel/parozlabs/demos/demo-1/test/ubuntu/bin/test/.env.local.test',
};🧩 API: decrypt(options: DecryptOptions): string
Esta función permite desencriptar una variable de entorno usando distintas combinaciones de configuración. Soporta tres formas de uso:
1. 🔧 Modo manual
Pasando todos los parámetros directamente:
decrypt({
nameSecret: 'SECRET_KEY',
urlSecretEnv: '/path/to/.env.secret',
nameEnv: 'DATABASE_PASSWORD',
urlEnv: '/path/to/.env',
});2. ⚙️ Secreto desde configuración
Pasando solo nameEnv y urlEnv, mientras que la clave secreta se toma desde decrypt.config.ts:
decrypt({
nameEnv: 'DATABASE_PASSWORD',
urlEnv: '/path/to/.env',
});3. 🧙♂️ Completamente desde configuración
Pasando solo el nameEnv. La clave secreta y la ubicación del .env también se toman desde decrypt.config.ts:
decrypt({
nameEnv: 'DATABASE_PASSWORD',
});