Hacker News

Google API-nøkler var ikke hemmeligheter, men så endret Gemini reglene

Finn ut hvordan Gemini endret sikkerhetsregler for Google API-nøkler. Hva utviklere trenger å vite om beskyttelse av API-nøkler som en gang ble ansett som trygge å avsløre.

7 min read

Mewayz Team

Editorial Team

Hacker News

Når "Public by Design" blir et sikkerhetsansvar

I nesten to tiår har utviklere som bygger på Googles økosystem lært en subtil, men viktig leksjon: Google API-nøkler er egentlig ikke hemmeligheter. Hvis du innebygde en YouTube Data API-nøkkel i en JavaScript-fil, ble ikke Google skremt. Hvis Maps API-nøkkelen din dukket opp i et offentlig GitHub-lager, var sikkerhetsresponsen i hovedsak et skuldertrekk og en påminnelse om å angi domenebegrensninger. The entire model was built around the assumption that these keys would live in client-side code, exposed to anyone who opened DevTools.

Den filosofien ga mening i lang tid. En Maps API-nøkkel som er eksponert uten domenebegrensninger kan få en overraskelsesregning, men den kom ikke til å kompromittere pasientjournaler eller tømme en bankkonto. Sprengningsradiusen var økonomisk og overkommelig. Googles verktøy – henvisningsbegrensninger, IP-hvitelisting, kvotegrenser – ble designet for å begrense skaden, ikke helt forhindre eksponering.

Så kom Gemini, og reglene endret seg. Problemet er at millioner av utviklere ikke har fått notatet.

Den eldre mentale modellen som nå brenner utviklere

Den gamle Google-utvikleropplevelsen var bevisst tillatt. Da du opprettet en Maps JavaScript API-nøkkel, oppfordret dokumentasjonen deg praktisk talt til å legge den direkte inn i HTML-en. Sikkerhetsmodellen var ikke hemmelighold – det var begrensning. Du ville låse nøkkelen til domenet ditt, angi kvotevarsler og gå videre. Dette var pragmatisk konstruksjon: applikasjoner på klientsiden kan virkelig ikke holde hemmeligheter for bestemte brukere, så Google bygde et system som anerkjente denne virkeligheten.

Dette skapte en generasjon utviklere – og enda viktigere, en generasjon av institusjonelle vaner – der Google API-nøkler okkuperte en annen mental kategori enn for eksempel en Stripe-hemmelig nøkkel eller en AWS-tilgangslegitimasjon. Du ville ikke limt inn den hemmelige Stripe-nøkkelen din i en offentlig repo. Men Maps-nøkkelen din? Det var praktisk talt en konfigurasjonsverdi, ikke en hemmelighet. Mange team lagret dem i offentlige konfigurasjonsfiler, README-filer, selv i miljøvariabler på klientsiden med prefiks med NEXT_PUBLIC_ eller REACT_APP_ uten å tenke på det.

Sikkerhetsforskere som skanner GitHub for eksponert legitimasjon, lærte også å behandle Google API-nøkler annerledes. En lekket Maps-nøkkel var et funn med lav alvorlighetsgrad. En lekket Gemini-nøkkel er en helt annen samtale.

Hva endret seg med Gemini - og hvorfor det betyr noe

💡 DID YOU KNOW?

Mewayz replaces 8+ business tools in one platform

CRM · Invoicing · HR · Projects · Booking · eCommerce · POS · Analytics. Free forever plan available.

Start Free →

Googles Gemini API følger ikke den gamle spilleboken. When you generate a Gemini API key through Google AI Studio, you're creating a credential with a fundamentally different risk profile than a Maps or YouTube key. Gemini-nøkler autentiserer tilgang til store språkmodellslutninger – en tjeneste som koster Googles reelle dataressurser og som fakturerer deg med token, ikke etter sidevisning.

Mer kritisk er det at Gemini API-nøkler ikke har de samme innebygde domenebegrensningsmekanismene som gjorde det mulig å avsløre andre Google-nøkler. Det er ingen enkel "lås dette til mitt nettsteds domene"-kontroll som vil hindre en angriper som fant nøkkelen din i et offentlig depot fra å spinne opp sin egen applikasjon og konsumere kvoten din – eller faktureringsgrensen – fra en server i et annet land.

Faren er ikke bare økonomisk. En avslørt Gemini-nøkkel kan brukes til å generere skadelig innhold, utføre umiddelbare injeksjonsangrep eller bygge verktøy som bryter Googles vilkår for bruk – alt fakturert til kontoen din og kan spores tilbake til identiteten din.

I 2024 identifiserte sikkerhetsforskere tusenvis av utsatte Gemini API-nøkler på GitHub alene, mange av dem i depoter som tidligere hadde vært vert for andre Google API-nøkler uten problemer. Utviklerne var ikke hensynsløse etter sine egne historiske standarder - de brukte en mental modell som Google selv hadde trent dem til å bruke. Miljøet endret seg raskere enn vanene gjorde.

Anatomien til en utilsiktet eksponering

Å forstå hvordan disse eksponeringene skjer er det første skrittet mot å forhindre dem. Feilmodusene er

Frequently Asked Questions

Why were Google API keys historically considered safe to expose publicly?

Google designed many of its APIs — Maps, YouTube, Places — for client-side use, meaning keys were intentionally embedded in front-end code visible to anyone. The security model relied on usage restrictions like domain allowlists and referrer checks rather than key secrecy. For years, an exposed key was considered a configuration issue, not a critical vulnerability requiring immediate rotation.

What changed when Google introduced Gemini API keys?

Unlike legacy Google APIs, Gemini API keys function more like traditional secrets — exposing one can result in unauthorized charges to your billing account, model abuse, or quota exhaustion with no built-in domain restriction to save you. The shift means developers must now treat Gemini keys with the same discipline as AWS credentials or Stripe secret keys, storing them server-side and never in client-facing code.

How should developers securely manage API keys for AI services today?

Best practice is to store all AI API keys as environment variables on the server, never in version-controlled files or client bundles. Use a secrets manager, rotate keys regularly, and set spending limits at the provider level. Platforms like Mewayz — a 207-module business OS at $19/mo available at app.mewayz.com — handle API credential management within their infrastructure so teams aren't manually juggling keys across services.

What should I do if I have already accidentally exposed a Gemini API key?

Revoke the compromised key immediately through Google Cloud Console and generate a replacement before doing anything else. Audit your billing dashboard for unexpected usage spikes that could indicate the key was harvested. Then review your codebase, CI/CD environment variables, and any public repositories for other leaked credentials. Treat the incident as you would any exposed payment credential — assume it was found and act accordingly.

Try Mewayz Free

All-in-one platform for CRM, invoicing, projects, HR & more. No credit card required.

Start managing your business smarter today

Join 30,000+ businesses. Free forever plan · No credit card required.

Ready to put this into practice?

Join 30,000+ businesses using Mewayz. Free forever plan — no credit card required.

Start Free Trial →

Ready to take action?

Start your free Mewayz trial today

All-in-one business platform. No credit card required.

Start Free →

14-day free trial · No credit card · Cancel anytime