Ottenere informazioni sulle chiavi API

Questa pagina descrive come utilizzare i metodi della chiave API per:

Prima di iniziare

La pagina utilizza curl e Google Cloud CLI per inviare richieste all'API API Keys. Per informazioni dettagliate su come configurare l'API per sperimentarla, consulta la sezione Introduzione alle chiavi API.

Elenco delle chiavi API in un progetto

Puoi ottenere un elenco di tutte le chiavi di proprietà di un progetto Cloud de Confiance con il metodo ListKeys:

gcurl https://apikeys.googleapis.com/v2/projects/PROJECT_NUMBER/locations/global/keys

In caso di esito positivo, riceverai una risposta simile alla seguente:

{
  "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=="
    }
  ]
}

Per impostazione predefinita, il metodo ListKeys restituisce un elenco delle chiavi API utilizzabili. Per visualizzare l'elenco di tutte le chiavi, incluse quelle contrassegnate per l'eliminazione, aggiungi il parametro di query show_deleted=true:

gcurl https://apikeys.googleapis.com/v2/projects/PROJECT_NUMBER/locations/global/keys?show_deleted=true

In caso di esito positivo, riceverai una risposta simile alla seguente:

{
  "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=="
    },
    {
      "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=="
    }
  ]
}

Il campo deleteTime memorizza la data e l'ora in cui è stato emesso il comando di eliminazione. Le chiavi vengono eliminate definitivamente 30 giorni dopo l'emissione del comando di eliminazione.

Se hai molte chiavi API nel tuo progetto, potresti preferire impaginare i risultati anziché visualizzare tutte le chiavi. Per controllare il numero di risultati per pagina, aggiungi il parametro di query pageSize impostato sul numero di risultati che vuoi restituire:

gcurl https://apikeys.googleapis.com/v2/projects/PROJECT_NUMBER/locations/global/keys?pageSize=25

La fine della risposta contiene il campo nextPageToken. Per ottenere la pagina successiva dei risultati, includi il token nella chiamata successiva aggiungendo il parametro di query pageToken:

gcurl 'https://apikeys.googleapis.com/v2/projects/PROJECT_NUMBER/locations/global/keys?pageSize=25&pageToken=TOKEN'

Tieni presente che devi racchiudere l'URL tra virgolette singole perché & è un carattere speciale di Bash.

Ottenere i metadati per una chiave API

Per ottenere i metadati di una chiave API specifica, chiama il metodo GetKey con Key.name:

gcurl https://apikeys.googleapis.com/v2/projects/PROJECT_NUMBER/locations/global/keys/KEY_ID

Recupero della stringa della chiave

Per motivi di sicurezza, i metodi ListKeys e GetKey non restituiscono Key.keyString. Per ottenere l'keyString per una chiave API, chiama il metodo GetKeyString con Key.name:

gcurl https://apikeys.googleapis.com/v2/Key.name/keyString

L'utente chiamante deve disporre dell'autorizzazione apikeys.keys.getKeyString per chiamare il metodo GetKeyString.

Ricerca di un nome di chiave e di un progetto in base alla stringa della chiave

Se hai un keyString e devi cercare la chiave name e il progetto proprietario della chiave API, chiama il metodo LookupKey e specifica il parametro di query keyString:

gcurl https://apikeys.googleapis.com/v2/keys:lookupKey?keyString=KEY_STRING

La risposta è simile alla seguente:

{
  "parent": "projects/12345678/locations/global",
  "name": "projects/12345678/locations/global/keys/2c437be3-1c77-417b-8f6f-748189760227"
}

Nella risposta:

  • Il campo parent contiene il numero di progetto del progetto Cloud de Confiance in cui è stata creata la chiave API.
  • Il campo name contiene l'identificatore univoco della chiave API.

Passaggi successivi