Práticas recomendadas para gerenciar chaves de API

Ao usar chaves de API nos seus aplicativos, garanta que elas sejam mantidas em segurança durante o armazenamento e a transmissão. A exposição pública das chaves de API pode levar a cobranças inesperadas na sua conta ou acesso não autorizado aos seus dados. Para manter as chaves de API em segurança, implemente as práticas recomendadas a seguir.

Adicione restrições da chave de API à sua chave

Ao adicionar restrições, é possível limitar como uma chave de API pode ser usada, reduzindo o impacto de uma chave de API comprometida.

Para mais informações, consulte Aplicar restrições de chave de API.

Evite usar parâmetros de consulta para fornecer sua chave de API às APIs do Google

Fornecer sua chave de API para APIs como um parâmetro de consulta inclui a chave no URL, expondo-a a roubo por verificações de URL. Use o cabeçalho HTTP x-goog-api-key ou uma biblioteca de cliente em vez disso.

Exclua chaves de API desnecessárias para minimizar a exposição a ataques

Retenha apenas as chaves de API que você está usando para manter a superfície de ataque o menor possível.

Não incluir chaves de API no código do cliente nem confirmar em repositórios de código

Chaves de API codificadas no código-fonte ou armazenadas em um repositório estão sujeitas a interceptação ou roubo por usuários mal-intencionados. O cliente precisa transmitir solicitações ao servidor, que pode adicionar a credencial e emitir a solicitação.

Não use chaves de API vinculadas a contas de serviço em produção

As chaves de API vinculadas a contas de serviço são projetadas para acelerar a experiência inicial dos desenvolvedores que estão conhecendo as APIs do Google Cloud . Não os use em ambientes de produção. Em vez disso, planeje migrar para alternativas mais seguras, como políticas de gerenciamento de identidade e acesso (IAM) e credenciais de conta de serviço de curta duração, seguindo práticas de segurança de menor privilégio.

Confira por que você deve migrar do uso de uma chave de API vinculada a uma conta de serviço para práticas mais seguras o quanto antes:

  • As chaves de API são enviadas junto com as solicitações. Isso aumenta a probabilidade de a chave ser exposta ou registrada.

  • As chaves de API são credenciais de portador. Isso significa que, se alguém roubar uma chave de API vinculada a uma conta de serviço, ela poderá ser usada para autenticar como essa conta e acessar os mesmos recursos que ela.

  • As chaves de API vinculadas a contas de serviço ocultam a identidade do usuário final nos registros de auditoria. Para acompanhar as ações de usuários individuais, verifique se cada um tem o próprio conjunto de credenciais.

Implementar monitoramento e geração de registros eficientes

O monitoramento do uso da API pode ajudar a alertar sobre uso não autorizado. Para mais informações, consulte a Visão geral do Cloud Monitoring e a Visão geral do Cloud Logging.

Isolar chaves de API

Forneça a cada membro da equipe uma chave de API para cada aplicativo. Isso pode ajudar a controlar o acesso, fornecer uma trilha de auditoria e reduzir o impacto de uma chave de API comprometida.

Gire as chaves de API periodicamente

Crie periodicamente novas chaves de API, atualize os aplicativos para usar as novas chaves e exclua as antigas.

Para mais informações, consulte Fazer a rotação de uma chave de API.

Considere um método mais seguro de autorização de acesso

Para saber como escolher um método de autenticação, consulte Métodos de autenticação.