Esta página descreve como usar os métodos de chave de API para:
- Listar chaves de API em um projeto
- Receber metadados de uma chave de API
- Conseguir a string da chave
- Consiga o nome e o projeto da chave para uma string de chave
Antes de começar
A página usa curl
com a ferramenta de linha de comando oauth2l para enviar solicitações à API de chaves de API. Consulte Primeiros passos com as chaves de API para detalhes sobre como começar a usar a API.
Como listar chaves de API em um projeto
É possível conseguir uma lista de todas as chaves de um projeto do Google Cloud com o método ListKeys
:
gcurl https://apikeys.googleapis.com/v2/projects/PROJECT_NUMBER/locations/global/keys
Em caso de sucesso, você receberá uma resposta semelhante a esta:
{ "keys": [ { "name": "projects/12345678/locations/global/keys/2885bf87-5b84-47fa-92af-08c3e9337349", "displayName": "API key 2", "createTime": "2019-05-29T22:07:22.036Z", "uid": "2885bf87-5b84-47fa-92af-08c3e9337349", "updateTime": "2019-05-29T22:07:22.058623Z", "restrictions": { "androidKeyRestrictions": {} }, "etag": "zHib8eXEMCxe4ayQEbIaZg==" }, { "name": "projects/12345678/locations/global/keys/a4db08b7-5729-4ba9-8c08-f2df493465a1", "displayName": "API key 1", "createTime": "2019-05-29T22:06:58.844Z", "uid": "a4db08b7-5729-4ba9-8c08-f2df493465a1", "updateTime": "2019-05-29T22:06:58.855103Z", "restrictions": { "androidKeyRestrictions": {} }, "etag": "0L5KcPMGoNi53K5+FqPxiw==" } ] }
Por padrão, o método ListKeys
retorna uma lista das chaves de API utilizáveis.
Para visualizar as chaves de lista que foram marcadas para exclusão, adicione um parâmetro de consulta com filter=state:DELETED
:
gcurl https://apikeys.googleapis.com/v2/projects/PROJECT_NUMBER/locations/global/keys?filter=state:DELETED
Em caso de sucesso, você receberá uma resposta semelhante a esta:
{ "keys": [ { "name": "projects/12345678/locations/global/keys/5d3564ad-f08e-48df-b0ca-0f50858ba3f2", "displayName": "Key 1", "createTime": "2019-06-12T04:47:30.214Z", "uid": "5d3564ad-f08e-48df-b0ca-0f50858ba3f2", "updateTime": "2021-03-05T22:35:37.387645Z", "deleteTime": "2021-03-05T22:35:37.290544Z", "etag": "V96UGAyyz+6sUHttzK42pQ==" }, { "name": "projects/12345678/locations/global/keys/7ad567fa-c11b-4903-99dc-88f89da7d73a", "displayName": "Key 2", "createTime": "2019-06-12T00:47:27.778Z", "uid": "7ad567fa-c11b-4903-99dc-88f89da7d73a", "updateTime": "2021-03-05T22:23:57.002187Z", "deleteTime": "2021-03-05T22:23:56.350234Z", "etag": "njPE6YjwHlrh6TLyxHibBg==" } ] }
O campo deleteTime
armazena quando o comando de exclusão foi emitido.
As chaves são excluídas permanentemente 30 dias após a emissão do comando de exclusão.
Se você tiver muitas chaves de API no projeto, prefira visualizar os resultados em vez de retornar todas as chaves. Para controlar o número ou os resultados por página, adicione o parâmetro de consulta pageSize
definido como o número de resultados que você quer retornar:
gcurl https://apikeys.googleapis.com/v2/projects/PROJECT_NUMBER/locations/global/keys?pageSize=25
O final da resposta contém o campo nextPageToken
. Para ver a próxima página de resultados, inclua o token na próxima chamada adicionando o parâmetro de consulta pageToken
:
gcurl 'https://apikeys.googleapis.com/v2/projects/PROJECT_NUMBER/locations/global/keys?pageSize=25&pageToken=TOKEN'
É necessário colocar o URL entre aspas simples porque &
é um caractere Bash especial.
Como receber metadados de uma chave de API
Para receber metadados sobre uma chave de API específica, chame o método GetKey
com o Key.name
:
gcurl https://apikeys.googleapis.com/v2/projects/PROJECT_NUMBER/locations/global/keys/KEY_ID
Como encontrar a string da chave
Por segurança, os métodos ListKeys
e GetKey
não retornam Key.keyString
. Para receber o keyString
de uma chave de API, chame o método GetKeyString
com Key.name
:
gcurl https://apikeys.googleapis.com/v2/Key.name/keyString
O usuário que faz a chamada precisa ter a permissão apikeys.keys.getKeyString
para chamar o método GetKeyString
.
Como pesquisar um nome de chave e um projeto por string de chave
Se você tiver um keyString
e precisar pesquisar a chave name
e o projeto que possui a chave de API, chame o método LookupKey
e especifique o parâmetro de consulta keyString
:
gcurl https://apikeys.googleapis.com/v2/keys:lookupKey?keyString=KEY_STRING
A resposta é semelhante a:
{ "parent": "projects/12345678/locations/global", "name": "projects/12345678/locations/global/keys/2c437be3-1c77-417b-8f6f-748189760227" }
Na resposta:
- O campo
parent
contém o número do projeto do Cloud em que a chave de API foi criada. - O campo
name
contém o identificador exclusivo da chave de API.
A seguir
- Como adicionar restrições a chaves de API
- Como visualizar registros de auditoria do Cloud
- Solução de problemas