Miljøvariabler og håndtering af secrets
Konfigurér Deres SaaS sikkert på tværs af miljøer ved at håndtere secrets, adskille offentlige og private variabler og undgå at lække nøgler til klienten.
Miljøvariabler og håndtering af secrets er en gratis AI-drevet SaaS: Stripe + godkendelse + fakturering + implementering-lektion på CoddyKit. Dette er lektion 4 af 4. Du kan læse hele lektionen gratis nedenfor — og derefter øve dig praktisk i browseren med en indbygget kodeeditor og en AI-vejleder, der er tilgængelig døgnet rundt. Den er en del af læringsforløbet i AI-drevet SaaS: Stripe + godkendelse + fakturering + implementering, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. AI-drevet SaaS: Stripe + godkendelse + fakturering + implementering-kurset indeholder 4 lektioner i alt.
Hvorfor konfiguration er vigtig
En SaaS-løsning opretter forbindelse til databaser, betalingsudbydere og AI-API'er – hver med nøgler, der varierer fra miljø til miljø. Miljøvariabler holder dem ude af koden, så én kodebase kan køre overalt.
Filen .env
Lokal konfiguration ligger i en .env-fil som almindelige nøgle-værdi-par. Den indlæses ved opstart og må aldrig committes til git.
DATABASE_URL=postgresql://localhost/app
STRIPE_SECRET_KEY=sk_test_123
OPENAI_API_KEY=sk-abcCommit aldrig hemmeligheder
Commit aldrig hemmeligheder: Føj .env til .gitignore, og medsend en .env.example med tomme værdier, så teammedlemmerne ved, hvad de skal udfylde, uden at se de rigtige nøgler.
# .gitignore
.env
.env.localOffentlige og private variabler
I Next.js kommer kun variabler med præfikset NEXT_PUBLIC_ med i browserens bundle – alt andet forbliver kun på serveren. Sæt aldrig dette præfiks på en ægte hemmelighed, for så kan alle besøgende se den.
NEXT_PUBLIC_APP_URL=https://app.com # safe in browser
STRIPE_SECRET_KEY=sk_live_xxx # server onlyLæsning af variabler
Læs variabler via process.env. Kode på serveren kan tilgå alle variablerne; klientkode kan kun se dem, der er offentlige og begynder med NEXT_PUBLIC_.
const stripe = new Stripe(process.env.STRIPE_SECRET_KEY!);
const url = process.env.NEXT_PUBLIC_APP_URL;Validering af miljøet ved opstart
En manglende nøgle bør få programmet til at fejle med det samme – ikke klokken 2 om natten i produktion. Valider de nødvendige variabler ved opstart med et skema som Zod, så problemerne opdages med det samme.
import { z } from 'zod';
const env = z.object({
DATABASE_URL: z.string().url(),
STRIPE_SECRET_KEY: z.string().min(1)
}).parse(process.env);Filer pr. miljø
Next.js indlæser .env.local og derefter .env.development eller .env.production. Disse miljøspecifikke filer holder forskellige værdier adskilt på en overskuelig måde.
Hemmeligheder på hostingplatforme
I produktion medsender du ikke en .env-fil. Angiv variablerne i din hostings kontrolpanel – Vercel eller Render – så de indsættes sikkert under kørsel.
vercel env add STRIPE_SECRET_KEY productionUdskiftning af nøgler
Hvis en nøgle bliver lækket, skal du udskifte den: generér en ny, opdatér dit miljølager, og implementér igen. Fordi nøglerne ligger uden for koden, er udskiftningen hurtig og indebærer lav risiko.
Undgå almindelige læk
Vær opmærksom på almindelige læk: logning af hele process.env, returnering af hemmeligheder i API-svar, hardcoding af nøgler som fallback eller commit af en ægte .env-fil.
Bedste praksis
Bedste praksis: Opbevar hemmeligheder i .env og uden for git, eksponér kun reelt offentlige værdier med NEXT_PUBLIC_, valider ved opstart, og opbevar produktionshemmeligheder hos din host.
Hurtigt tjek
Afprøv din viden om hemmeligheder.
Opsummering
Opsummering: Opbevar konfiguration i .env, og hold den ude af git, brug kun NEXT_PUBLIC_ til ufarlige værdier, valider ved opstart, og angiv produktionshemmeligheder hos din host.
Lær AI-drevet SaaS: Stripe + godkendelse + fakturering + implementering med en AI-underviser — gratis
Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.
- Kurser
- 12
- Lektioner
- 48
Ofte stillede spørgsmål
Er lektionen “Miljøvariabler og håndtering af secrets” gratis?
Ja — hele teksten til “Miljøvariabler og håndtering af secrets” kan læses gratis her på nettet. Hvis du vil øve dig interaktivt med en indbygget kodeeditor og en AI-vejleder døgnet rundt og få adgang til resten af AI-drevet SaaS: Stripe + godkendelse + fakturering + implementering-kurset, skal du opgradere til CoddyKit PRO. AI-drevet SaaS: Stripe + godkendelse + fakturering + implementering-kurset indeholder 4 lektioner i alt.
Hvad lærer jeg i “Miljøvariabler og håndtering af secrets”?
Konfigurér Deres SaaS sikkert på tværs af miljøer ved at håndtere secrets, adskille offentlige og private variabler og undgå at lække nøgler til klienten. Du øver dig i AI-drevet SaaS: Stripe + godkendelse + fakturering + implementering med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.
Skal jeg have erfaring for at begynde på AI-drevet SaaS: Stripe + godkendelse + fakturering + implementering?
Der kræves ingen tidligere erfaring. AI-drevet SaaS: Stripe + godkendelse + fakturering + implementering på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 4 af 4.
Hvor lang tid tager lektionen “Miljøvariabler og håndtering af secrets”?
De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.
Kan jeg skrive og køre kode i denne AI-drevet SaaS: Stripe + godkendelse + fakturering + implementering-lektion?
Ja. Alle AI-drevet SaaS: Stripe + godkendelse + fakturering + implementering-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.
Alle lektioner i dette kursus
- Introduktion til SaaS og AI-synergi
- Valg af tech stack
- Initialisering og strukturering af projektet
- Miljøvariabler og håndtering af secrets