Hacker News

As chaves da API do Google não eram segredos, mas o Gemini mudou as regras

Saiba como o Gemini mudou as principais regras de segurança da API do Google. O que os desenvolvedores precisam saber sobre como proteger chaves de API que antes eram consideradas seguras para exposição.

8 minutos de leitura

Mewayz Team

Editorial Team

Hacker News

Quando "Public by Design" se torna uma responsabilidade de segurança

Por quase duas décadas, os desenvolvedores que desenvolveram o ecossistema do Google aprenderam uma lição sutil, mas importante: as chaves de API do Google não são realmente segredos. Se você incorporou uma chave da API de dados do YouTube em um arquivo JavaScript, o Google não ficou alarmado. Se sua chave da API do Maps aparecesse em um repositório público do GitHub, a resposta de segurança seria essencialmente um encolher de ombros e um lembrete para definir restrições de domínio. Todo o modelo foi construído com base na suposição de que essas chaves residiriam no código do lado do cliente, expostas a qualquer pessoa que abrisse o DevTools.

Essa filosofia fez sentido por muito tempo. Uma chave da API do Maps exposta sem restrições de domínio poderia gerar uma conta surpresa, mas não comprometeria os registros dos pacientes nem esgotaria uma conta bancária. O raio de explosão era financeiro e administrável. As ferramentas do Google – restrições de referência, lista de permissões de IP, limites de cota – foram projetadas para conter os danos, e não impedir totalmente a exposição.

Então chegou Gêmeos e as regras mudaram. O problema é que milhões de desenvolvedores não receberam o memorando.

O modelo mental legado que agora está deixando os desenvolvedores queimados

A antiga experiência do desenvolvedor do Google era deliberadamente permissiva. Quando você criou uma chave da API Maps JavaScript, a documentação praticamente incentivou você a inseri-la diretamente em seu HTML. O modelo de segurança não era sigilo – era restrição. Você bloquearia a chave do seu domínio, definiria alertas de cota e seguiria em frente. Isso foi uma engenharia pragmática: os aplicativos do lado do cliente realmente não conseguem guardar segredos de determinados usuários, então o Google construiu um sistema que reconhecia essa realidade.

Isso criou uma geração de desenvolvedores – e mais importante, uma geração de hábitos institucionais – onde as chaves de API do Google ocupavam uma categoria mental diferente de, digamos, uma chave secreta Stripe ou uma credencial de acesso AWS. Você não colaria sua chave secreta do Stripe em um repositório público. Mas sua chave do Maps? Esse era praticamente um valor de configuração, não um segredo. Muitas equipes os armazenaram em arquivos de configuração públicos, arquivos README, até mesmo em variáveis ​​de ambiente do lado do cliente prefixadas com NEXT_PUBLIC_ ou REACT_APP_ sem pensar duas vezes.

Pesquisadores de segurança que examinam o GitHub em busca de credenciais expostas também aprenderam a tratar as chaves de API do Google de maneira diferente. Uma chave vazada do Maps foi uma descoberta de baixa gravidade. Uma chave Gemini vazada é uma conversa totalmente diferente.

O que mudou com Gêmeos – e por que isso é importante

💡 VOCÊ SABIA?

O Mewayz substitui 8+ ferramentas de negócios em uma única plataforma.

CRM · Faturamento · RH · Projetos · Agendamentos · eCommerce · PDV · Analytics. Plano gratuito para sempre disponível.

Comece grátis →

A API Gemini do Google não segue o manual antigo. Ao gerar uma chave de API Gemini por meio do Google AI Studio, você cria uma credencial com um perfil de risco fundamentalmente diferente de uma chave do Maps ou do YouTube. As chaves Gemini autenticam o acesso à inferência de modelos de linguagem de grande porte – um serviço que custa ao Google recursos de computação reais e que cobra por token, não por visualização de página.

Mais importante ainda, as chaves da API Gemini não têm os mesmos mecanismos integrados de restrição de domínio que tornaram a exposição de outras chaves do Google sobreviventes. Não existe um controle simples de “bloquear isso no domínio do meu site” que impediria que um invasor que encontrasse sua chave em um repositório público criasse seu próprio aplicativo e consumisse sua cota – ou seu limite de faturamento – de um servidor em outro país.

O perigo não é apenas financeiro. Uma chave Gemini exposta pode ser usada para gerar conteúdo prejudicial, realizar ataques de injeção imediata ou criar ferramentas que violem os termos de serviço do Google – tudo cobrado em sua conta e rastreável até sua identidade.

Em 2024, pesquisadores de segurança identificaram milhares de chaves de API Gemini expostas apenas no GitHub, muitas delas em repositórios que já haviam hospedado outras chaves de API do Google sem incidentes. Os desenvolvedores não estavam sendo imprudentes com seus próprios padrões históricos – eles estavam aplicando um modelo mental que o próprio Google os treinou para usar. O ambiente mudou mais rápido do que os hábitos.

A anatomia de uma exposição acidental

Compreender como essas exposições acontecem é o primeiro passo para preveni-las. Os modos de falha são

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.

Experimente o Mewayz Gratuitamente

Plataforma tudo-em-um para CRM, faturamento, projetos, RH e mais. Não é necessário cartão de crédito.

Comece a gerenciar seu negócio de forma mais inteligente hoje

Junte-se a 30,000+ empresas. Plano gratuito para sempre · Não é necessário cartão de crédito.

Pronto para colocar isso em prática?

Junte-se a 30,000+ empresas usando o Mewayz. Plano gratuito permanente — cartão de crédito não necessário.

Iniciar Teste Gratuito →

Ready to take action?

Inicie seu teste gratuito do Mewayz hoje

Plataforma de negócios tudo-em-um. Cartão de crédito não necessário.

Comece grátis →

Teste grátis de 14 dias · Sem cartão de crédito · Cancele a qualquer momento