SDK .NET
Carrega secrets directament en una aplicació .NET en iniciar-se.
.NET SDK
Carrega secrets directament a la teva aplicació .NET a l'inici. Façana d'una línia, constructor fluent, integració amb IConfiguration o control programàtic total.
Instal·lació
dotnet add package EnvilderUna línia: resoldre + injectar
Resol secrets del fitxer de mapeig i injecta'ls a Environment en una sola crida:
using Envilder;
// Resolve secrets and inject into Environment
Env.Load("envilder.json");
var dbPassword = Environment.GetEnvironmentVariable("DB_PASSWORD");Resoldre sense injectar
Obté secrets com un diccionari sense modificar l'entorn:
using Envilder;
var secrets = Env.ResolveFile("envilder.json");
var dbPassword = secrets["DB_PASSWORD"];Constructor fluent amb sobreescriptures
Sobreescriu la configuració del proveïdor de manera programàtica amb l'API fluent:
using Envilder;
var secrets = Env.FromMapFile("envilder.json")
.WithProvider(SecretProviderType.Azure)
.WithVaultUrl("https://my-vault.vault.azure.net")
.Resolve();
// Or inject directly
Env.FromMapFile("envilder.json")
.WithProfile("staging")
.Inject();Càrrega basada en entorn
Encamina la càrrega de secrets segons el teu entorn actual. Cada entorn mapeja al seu fitxer de secrets:
using Envilder;
var env = Environment.GetEnvironmentVariable("APP_ENV") ?? "development";
Env.Load(env, new Dictionary<string, string?>
{
["production"] = "prod-secrets.json",
["development"] = "dev-secrets.json",
["test"] = null, // no secrets loaded
});Validació de secrets
Validació opcional que assegura que tots els secrets resolts tenen valors no buits:
using Envilder;
var secrets = Env.ResolveFile("envilder.json");
secrets.ValidateSecrets(); // throws SecretValidationException if any value is emptyVia IConfiguration (ASP.NET)
Afegeix Envilder com a font de configuració a la teva aplicació ASP.NET:
var builder = WebApplication.CreateBuilder(args);
builder.Configuration.AddEnvilder("envilder.json");
var app = builder.Build();Avançat: control programàtic total
Analitza el fitxer de mapeig, resol secrets i injecta'ls a les variables d'entorn:
using Envilder;
var secrets = await Env.ResolveFileAsync("envilder.json");
EnvilderClient.InjectIntoEnvironment(secrets);