Estandarditza com
les teves apps consumeixen
secrets.
Deixa de reinventar la càrrega de secrets a cada projecte. Defineix un contracte d'entorn i resol-lo a tot arreu.
❯ npm install -g envilder
Per què la gestió de secrets està trencada
Cada equip, cada etapa, cada runtime gestiona els secrets de forma diferent. Sense estàndard. Sense consistència. Sense confiança.
Fragmentada entre eines
L'entorn local utilitza fitxers .env. CI/CD llegeix d'integracions amb vaults. Producció té el seu propi mètode. Mateixa app, diferents fluxos de configuració a tot arreu.
Secrets compartits per canals insegurs
Claus API enviades per Slack, fitxers .env als repositoris, pàgines wiki amb credencials en text pla. Un incident de seguretat esperant a passar.
El desfasament de configuració és inevitable
Sense una font única de veritat sobre quins secrets necessita una app. Dev, staging i producció es desincronitzen. Els desplegaments fallen. Ningú sap quina config és la correcta.
Per què Envilder?
Envilder és una capa de resolució sobre el teu gestor de secrets existent. Els secrets es queden al teu núvol. El mapeig JSON és només el contracte que manté cada entorn consistent.
Zero infraestructura
Sense servidors, sense proxies, sense SaaS intermediari. Construït sobre AWS SSM i Azure Key Vault, serveis que ja utilitzes i pagues.
Un fitxer, tots els secrets
Un sol contracte JSON defineix cada secret per a cada entorn. Versionat a Git, revisable en PRs, comparable. El teu equip revisa canvis de secrets al mateix PR que el codi.
Rotació de secrets segura
Rota valors a AWS SSM o Azure Key Vault. Cada consumidor (local, CI/CD i runtime) resol el nou valor automàticament. Sense reescriure .env, sense canvis als pipelines.
Multi-Cloud, sense lock-in
AWS SSM, Azure Key Vault, GCP Secret Manager (pròximament). Canvia de proveïdor sense modificar el codi de l'app. El teu núvol, les teves regles.
També inclou
Com funciona
Defineix. Resol. Desplega.
Defineix el model de mapeig
Un fitxer JSON que mapeja noms de variables d'entorn a rutes de secrets al núvol. Fes-ne commit. Revisa'l en PRs. Compara entre entorns. Un model per a cada etapa i runtime.
{
"DB_PASSWORD": "/my-app/prod/db-password",
"API_KEY": "/my-app/prod/api-key",
"SECRET_TOKEN": "/my-app/prod/secret-token"
} Resol amb la CLI
Una comanda obté cada secret del teu vault al núvol i els escriu a .env. Utilitza'l localment o en scripts. Mateix mapeig, mateix comportament.
$ envilder --map=envilder.json --envfile=.env
✔ Obtingut DB_PASSWORD → ···word
✔ Obtingut API_KEY → ···key
✔ Obtingut SECRET_TOKEN → ···oken
✔ Fitxer d'entorn escrit a .env Carrega en runtime amb SDKs
Salta't el fitxer .env completament. Carrega secrets directament a la teva aplicació a l'inici amb SDKs natius: Python, .NET, Node.js i més.
pip install envilder from envilder import Envilder, SecretProviderType
# One-liner: load secrets into os.environ
Envilder.load("envilder.json")
# Or resolve as a dict without injecting
secrets = Envilder.resolve_file("envilder.json")
# Fluent builder with provider override
secrets = (
Envilder.from_map_file("envilder.json")
.with_provider(SecretProviderType.AZURE)
.with_vault_url("https://my-vault.vault.azure.net")
.inject()
) dotnet add package Envilder using Envilder;
var builder = WebApplication.CreateBuilder(args);
// Load secrets into IConfiguration
builder.Configuration.AddEnvilder("envilder.json");
// Register EnvilderClient in DI
builder.Services.AddEnvilder("envilder.json");
// --- Or standalone (no ASP.NET) ---
// One-liner: resolve + inject into Environment
Env.Load("envilder.json");
// Fluent builder with provider override
Env.FromMapFile("envilder.json")
.WithProvider(SecretProviderType.Azure)
.WithVaultUrl("https://my-vault.vault.azure.net")
.Inject(); npm install @envilder/sdk import { Envilder, SecretProviderType } from '@envilder/sdk';
// One-liner: resolve + inject into process.env
await Envilder.load('envilder.json');
// Or resolve as a Map without injecting
const secrets = await Envilder.resolveFile('envilder.json');
// Fluent builder with provider override
const override = await Envilder.fromMapFile('envilder.json')
.withProvider(SecretProviderType.Azure)
.withVaultUrl('https://my-vault.vault.azure.net')
.inject(); Push des de dev al vault
Necessites afegir o rotar un secret? Puja valors des del teu entorn local al proveïdor al núvol. Sense necessitat de consola.
$ envilder --push --envfile=.env --map=envilder.json
✔ Pujat DB_PASSWORD → /my-app/prod/db-password
✔ Pujat API_KEY → /my-app/prod/api-key
✔ Pujat SECRET_TOKEN → /my-app/prod/secret-token Els secrets es queden al teu vault
Sense intermediaris. El teu núvol gestiona l'emmagatzematge, la rotació i el control d'accés. Envilder resol, mai emmagatzema.
Mira'l en acció
Mira com Envilder simplifica la gestió de secrets en menys de 2 minuts.
El teu núvol. La teva elecció.
Envilder funciona amb AWS SSM Parameter Store, Azure Key Vault i GCP Secret Manager (pròximament). Configura en línia o amb flags CLI.
AWS SSM Parameter Store
{
"$config": {
"provider": "aws",
"profile": "prod-account"
},
"DB_PASSWORD": "/my-app/prod/db-password",
"API_KEY": "/my-app/prod/api-key"
} $ envilder --map=envilder.json --envfile=.env
- ✔ Suport de GetParameter amb WithDecryption
- ✔ Suport de perfil AWS per a multi-compte
- ✔ Control d'accés basat en polítiques IAM
- ✔ Registre d'auditoria CloudTrail
Azure Key Vault
{
"$config": {
"provider": "azure",
"vaultUrl": "https://my-vault.vault.azure.net"
},
"DB_PASSWORD": "my-app-prod-db-password",
"API_KEY": "my-app-prod-api-key"
} $ envilder --provider=azure --vault-url=https://my-vault.vault.azure.net --map=envilder.json --envfile=.env
- ✔ Auto-normalitza noms de secrets (barres → guions)
- ✔ Autenticació DefaultAzureCredential
- ✔ Control d'accés Azure RBAC
- ✔ Registre d'auditoria Azure Monitor
GCP Secret Manager
Pròximament{
"$config": {
"provider": "gcp",
"projectId": "my-project-id"
},
"DB_PASSWORD": "my-app-prod-db-password",
"API_KEY": "my-app-prod-api-key"
} $ envilder --provider=gcp --map=envilder.json --envfile=.env
- ✔ Integració amb Google Cloud Secret Manager
- ✔ Application Default Credentials (ADC)
- ✔ Control d'accés basat en IAM
- ✔ Cloud Audit Logs
Comença ara
En funcionament en menys d'un minut.
Prerequisits
- Node.js v22.12+
- AWS CLI configurat (per AWS SSM)
- Azure CLI configurat (per Azure Key Vault)
- Permisos IAM:
ssm:GetParameter/ssm:PutParameter
Instal·lar
Inici ràpid
- Crea un envilder.json que mapegi variables d'entorn a rutes de secrets
- Executa envilder --map=envilder.json --envfile=.env
- El teu fitxer .env està llest ✔