Miljövariabler och hantering av hemligheter
Konfigurera er SaaS säkert i olika miljöer genom att hantera hemligheter, skilja offentliga och privata variabler åt och undvika att läcka nycklar till klienten.
Miljövariabler och hantering av hemligheter är en gratis lektion i AI-drivna SaaS-appar: Stripe + autentisering + fakturering + driftsättning på CoddyKit. Detta är lektion 4 av 4. Ni kan läsa hela lektionen gratis nedan och sedan öva praktiskt i webbläsaren med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt. Den ingår i lärvägen för AI-drivna SaaS-appar: Stripe + autentisering + fakturering + driftsättning, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i AI-drivna SaaS-appar: Stripe + autentisering + fakturering + driftsättning innehåller totalt 4 lektioner.
Varför konfiguration är viktig
Ett SaaS ansluter till databaser, betalningsleverantörer och AI-API:er – var och en med nycklar som skiljer sig åt mellan miljöer. Miljövariabler håller dem borta från koden, så att samma kodbas kan köras överallt.
Filen .env
Lokal konfiguration finns i en .env-fil som enkla nyckel-värde-par. Den läses in vid uppstart och får aldrig checkas in i git.
DATABASE_URL=postgresql://localhost/app
STRIPE_SECRET_KEY=sk_test_123
OPENAI_API_KEY=sk-abcChecka aldrig in hemligheter
Checka aldrig in hemligheter: lägg till .env i .gitignore och leverera en .env.example med tomma värden, så att teammedlemmar vet vad de ska fylla i utan att se riktiga nycklar.
# .gitignore
.env
.env.localPublika och privata variabler
I Next.js når endast variabler med prefixet NEXT_PUBLIC_ webbläsarpaketet – allt annat förblir enbart tillgängligt på servern. Ange aldrig ett riktigt lösenord eller en riktig hemlighet med detta prefix, eftersom alla besökare då kan se den.
NEXT_PUBLIC_APP_URL=https://app.com # safe in browser
STRIPE_SECRET_KEY=sk_live_xxx # server onlyLäsa variabler
Läs variabler via process.env. Serverkod kan komma åt alla variabler, medan klientkod endast ser de publika variablerna med prefixet NEXT_PUBLIC_.
const stripe = new Stripe(process.env.STRIPE_SECRET_KEY!);
const url = process.env.NEXT_PUBLIC_APP_URL;Validera miljövariabler vid uppstart
En saknad nyckel bör orsaka ett omedelbart fel, inte upptäckas klockan två på natten i produktion. Validera obligatoriska variabler vid uppstart med ett schema som Zod, så att problem upptäcks direkt.
import { z } from 'zod';
const env = z.object({
DATABASE_URL: z.string().url(),
STRIPE_SECRET_KEY: z.string().min(1)
}).parse(process.env);Filer per miljö
Next.js läser in .env.local och därefter .env.development eller .env.production. Dessa miljöspecifika filer håller olika värden tydligt åtskilda.
Hemligheter på hostingplattformar
I produktion levererar ni inte en .env-fil. Ange variabler i er hostingleverantörs kontrollpanel – Vercel eller Render – så injiceras de säkert vid körning.
vercel env add STRIPE_SECRET_KEY productionRotera nycklar
Om en nyckel läcker ska ni rotera den: generera en ny, uppdatera ert miljövariabellager och distribuera på nytt. Eftersom nycklarna finns utanför koden går rotationen snabbt och innebär låg risk.
Undvika vanliga läckor
Var uppmärksam på vanliga läckor: att logga hela process.env, returnera hemligheter i API-svar, hårdkoda nycklar som reservvärden eller checka in en riktig .env-fil.
Bästa praxis
Bästa praxis: håll hemligheter i .env och utanför git, exponera endast verkligt publika värden med NEXT_PUBLIC_, validera vid uppstart och lagra produktionshemligheter hos er hostingleverantör.
Snabb kontroll
Testa era kunskaper om hemligheter.
Sammanfattning
Sammanfattning: lagra konfiguration i .env och håll den utanför git, använd NEXT_PUBLIC_ endast för säkra värden, validera vid uppstart och ange produktionshemligheter hos er hostingleverantör.
Lär dig AI-drivna SaaS-appar: Stripe + autentisering + fakturering + driftsättning med en AI-lärare – gratis
Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.
- Kurser
- 12
- Lektioner
- 48
Vanliga frågor
Är lektionen ”Miljövariabler och hantering av hemligheter” gratis?
Ja – hela texten till ”Miljövariabler och hantering av hemligheter” kan läsas gratis här på webben. Om Ni vill öva interaktivt med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt och låsa upp resten av kursen i AI-drivna SaaS-appar: Stripe + autentisering + fakturering + driftsättning, kan Ni uppgradera till CoddyKit PRO. Kursen i AI-drivna SaaS-appar: Stripe + autentisering + fakturering + driftsättning innehåller totalt 4 lektioner.
Vad lär jag mig i ”Miljövariabler och hantering av hemligheter”?
Konfigurera er SaaS säkert i olika miljöer genom att hantera hemligheter, skilja offentliga och privata variabler åt och undvika att läcka nycklar till klienten. Ni övar på AI-drivna SaaS-appar: Stripe + autentisering + fakturering + driftsättning med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.
Behöver jag någon erfarenhet för att börja lära mig AI-drivna SaaS-appar: Stripe + autentisering + fakturering + driftsättning?
Du behöver inga förkunskaper. Utbildningen i AI-drivna SaaS-appar: Stripe + autentisering + fakturering + driftsättning på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 4 av 4.
Hur lång tid tar lektionen ”Miljövariabler och hantering av hemligheter”?
De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.
Kan jag skriva och köra kod i den här AI-drivna SaaS-appar: Stripe + autentisering + fakturering + driftsättning-lektionen?
Ja. Varje AI-drivna SaaS-appar: Stripe + autentisering + fakturering + driftsättning-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.
Alla lektioner i den här kursen
- Introduktion till SaaS och AI-samverkan
- Välja teknikstack
- Projektinitiering och struktur
- Miljövariabler och hantering av hemligheter