Como usar chaves de API

Neste guia, você aprende a criar e configurar restrições de chaves de API.

As chaves de API são strings criptografadas simples, utilizadas quando você chama determinadas APIs que não precisam acessar dados particulares de usuários. Essas chaves são úteis em clientes como aplicativos móveis e navegadores que não têm um servidor de back-end. A chave de API é usada para rastrear solicitações de APIs associadas ao projeto para cota e faturamento.

As chaves de API têm limitações importantes:

Por isso, recomendamos usar o fluxo de autenticação padrão. No entanto, há casos limitados em que as chaves de API são mais apropriadas. Por exemplo, para desenvolver um aplicativo móvel que use a API Google Cloud Translation sem um servidor de back-end, as chaves de API são a maneira mais simples de fazer a autenticação. Na maioria dos casos, é recomendável que o aplicativo se comunique com um servidor de back-end que processe a autenticação e a chamada dos serviços do Google Cloud Platform.

Criar chave de API

  1. Acesse o painel APIs e serviços→Credenciais no console do GCP.

  2. Selecione Criar credenciais e, em seguida, selecione a chave da API no menu suspenso.

    Adicionar chave de API

  3. Clique no botão Criar. A chave recém-criada será exibida na caixa de diálogo Chave de API criada.

Copie sua chave e mantenha em segurança. A menos que você esteja usando uma chave de teste com a intenção de excluí-la mais tarde, recomendamos adicionar uma restrição de chave de API.

Como usar uma chave de API

Passe a chave de API em uma chamada da REST API como um parâmetro de consulta com o formato a seguir. Substitua API_KEY pela sua chave de API

key=API_KEY

Por exemplo, para passar uma chave de API de uma solicitação da Cloud Natural Language API para documents.analyzeEntities:

POST https://language.googleapis.com/v1/documents:analyzeEntities?key=API_KEY

Como proteger uma chave de API

Ao usar as chaves de API nos aplicativos, tome cuidado para mantê-las em segurança. A exposição das credenciais resulta no comprometimento da sua conta, o que pode gerar cobranças inesperadas. Para manter as chaves de API em segurança, siga estas práticas recomendadas:

  • Não incorpore as chaves de API diretamente no código, elas podem ser expostas acidentalmente. Por exemplo, caso você se esqueça de remover as chaves do código compartilhado. Em vez de incorporá-las nos aplicativos, armazene essas chaves em variáveis de ambiente ou em arquivos fora da árvore de origem do seu aplicativo.

  • Não armazene as chaves de API em arquivos dentro da árvore de origem do aplicativo. Se essas chaves forem mantidas em arquivos, mantenha esses arquivos fora da árvore de origem do aplicativo, para garantir que as chaves não fiquem no sistema de controle do código-fonte. Isso é particularmente importante quando é usado um sistema de gerenciamento de código-fonte público como o GitHub.

  • Configure as restrições da chave de API para que elas sejam usadas apenas pelos endereços IP, URLs referenciadores e aplicativos para dispositivos móveis que precisem delas.

  • Regenere as chaves de API periodicamente. Para isso, na página "Credenciais", clique em Regenerar chave para cada uma das chaves. Em seguida, atualize seus aplicativos para que as chaves recém-geradas sejam usadas. As chaves antigas continuarão a funcionar 24 horas após você gerar as chaves de substituição.

  • Revise o código antes de liberá-lo publicamente. O código não deve conter chaves de API ou outras informações confidenciais ao ser disponibilizado publicamente.

Como adicionar restrições às chaves de API

Por padrão, uma chave de API não tem restrições. As chaves sem restrições não são seguras porque podem ser visualizadas publicamente, como em um navegador, ou acessadas no dispositivo em que elas residem. Para proteger sua chave, recomendamos adicionar uma restrição.

Para adicionar uma restrição:

  1. Clique em Restringir chave na caixa de diálogo Chave de API criada. O painel de configuração Chave de API é exibido:

    Adicionar restrição de chave de API

  2. Escolha o tipo de restrição com base nas necessidades do aplicativo.

    • No caso dos clientes da API executados em um navegador da Web, uma restrição de referenciadores de HTTP precisa ser adicionada para que apenas as páginas especificadas consigam chamar a API. Esses tipos de aplicativos expõem suas chaves de API e, por isso, recomendamos usar uma conta de serviço.

    • No caso dos clientes da API que executam um servidor de back-end não compatível com as contas de serviço, uma restrição de endereços IP precisa ser adicionada para evitar o uso de clientes em diferentes endereços IP.

    • No caso dos aplicativos Android, uma restrição de aplicativos Android precisa ser adicionada, além do nome do pacote e da impressão digital do certificado de assinatura SHA-1.

    • No caso dos aplicativos iOS, uma restrição de aplicativos iOS precisa ser adicionada, além dos identificadores do pacote iOS, para que as chamadas de API a esses pacotes sejam restritas.

Para os testes, convém não colocar qualquer restrição. No entanto, recomendamos adicionar uma restrição a esta chave ou excluir a restrição após implantar seu aplicativo na produção.

Próximas etapas

Esta página foi útil? Conte sua opinião sobre:

Enviar comentários sobre…