Utilizzo di chiavi API

Questo argomento mostra agli sviluppatori di applicazioni come utilizzare le chiavi API con le API Google Cloud. Una chiave API è una semplice stringa criptata che identifica un'applicazione senza alcun principal. Sono utili per accedere ai dati pubblici in modo anonimo e vengono utilizzati per associare le richieste API al progetto per la quota e la fatturazione.

Per scoprire di più sull'autenticazione per le API Google Cloud e per determinare la strategia di autenticazione migliore per gli scenari comuni, consulta la panoramica sull'autenticazione. Consulta la documentazione di Google Maps Platform per ulteriori informazioni sull'utilizzo di chiavi API per gli SDK e le API di Google Maps Platform. Per scoprire di più sulle chiavi API, consulta la documentazione relativa alle chiavi API.

Provalo

Se non conosci Google Cloud, crea un account per valutare le prestazioni dei nostri prodotti in scenari reali. I nuovi clienti ricevono anche 300 $ di crediti gratuiti per l'esecuzione, il test e il deployment dei carichi di lavoro.

Inizia gratuitamente

Gestione delle chiavi API

Consigliamo di utilizzare la console per gestire le chiavi API. Vai alla pagina API e servizi → credenziali nella console. Le tue chiavi API vengono mostrate nella sezione Chiavi API. In questa pagina puoi creare chiavi API, definire restrizioni per le chiavi API, ruotare le stringhe di chiave API ed eseguire altre azioni.

Per gestire le chiavi API, devi avere il ruolo Amministratore chiavi API (roles/serviceusage.apiKeysAdmin) nel progetto.

Creazione di una chiave API

Per creare una chiave API:

  1. Vai al riquadro API e servizi → credenziali nella console.

  2. Seleziona Crea credenziali, quindi seleziona Chiave API dal menu a discesa.

    Nella finestra di dialogo Chiave API creata viene visualizzata la chiave appena creata.

    Una chiave API è una lunga stringa contenente lettere maiuscole e minuscole, numeri e trattini, come a4db08b7-5729-4ba9-8c08-f2df493465a1.

Dovresti copiare la chiave e tenerla al sicuro. A meno che non utilizzi una chiave di test che intendi eliminare in un secondo momento, aggiungi le limitazioni alle chiavi applicazione e API.

Utilizzo di una chiave API

Passa la chiave API in una chiamata API REST come parametro di ricerca con il seguente formato. Sostituisci API_KEY con la chiave API,

key=API_KEY

Ad esempio, per passare una chiave API per una richiesta API Cloud Natural Language per documents.analyzeEntities:

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

Protezione di una chiave API

Quando utilizzi le chiavi API nelle tue applicazioni, assicurati che siano protette durante lo spazio di archiviazione e la trasmissione. Esporre pubblicamente le chiavi API può causare addebiti imprevisti sul tuo account. Per proteggere le tue chiavi API, segui queste best practice:

  • Non incorporare le chiavi API direttamente nel codice. Le chiavi API incorporate nel codice possono essere esposte accidentalmente al pubblico. Ad esempio, potresti dimenticarti di rimuovere le chiavi dal codice che condividi. Anziché incorporare le chiavi API nelle applicazioni, archiviale in variabili di ambiente o in file esterni all'albero di origine dell'applicazione.

  • Non archiviare chiavi API nei file all'interno dell'albero di origine dell'applicazione. Se memorizzi le chiavi API nei file, mantieni i file al di fuori della struttura di origine dell'applicazione per assicurarti che le chiavi non finiscano nel sistema di controllo del codice sorgente. Ciò è particolarmente importante se utilizzi un sistema di gestione di codice sorgente pubblico come GitHub.

  • Configura le limitazioni delle chiavi API e applicazione. L'aggiunta di limitazioni consente di ridurre l'impatto di una chiave API compromessa.

  • Elimina le chiavi API non necessarie per ridurre al minimo l'esposizione agli attacchi.

  • Rigenera periodicamente le tue chiavi API. Puoi rigenerare le chiavi API dalla pagina Credenziali facendo clic su Rigenera chiave per ogni chiave. Quindi, aggiorna le applicazioni per usare le chiavi appena generate. Dopo aver generato le chiavi sostitutive, le tue chiavi precedenti continueranno a funzionare per 24 ore.

  • Controlla il codice prima di pubblicarlo pubblicamente. Prima di rendere disponibile il codice, assicurati che il codice non contenga chiavi API o altre informazioni private.

Applicazione di limitazioni relative alle chiavi API

Le chiavi API non hanno limitazioni per impostazione predefinita. Le chiavi senza restrizioni non sono sicure in quanto possono essere utilizzate da chiunque, ovunque. Per le applicazioni di produzione, devi impostare sia le limitazioni delle applicazioni sia le restrizioni delle API.

Per aggiungere limitazioni alle chiavi API:

  1. Vai al riquadro API e servizi → credenziali nella console.

  2. Seleziona il nome di una chiave API esistente.

Aggiunta di limitazioni delle applicazioni

Le restrizioni delle applicazioni specificano i siti web, gli indirizzi IP o le app che possono utilizzare una chiave API. Aggiungi limitazioni dell'applicazione in base al tipo di applicazione. Puoi impostare un solo tipo di restrizione per chiave API.

Scegli il tipo di limitazione in base alle esigenze della tua applicazione.

  • Utilizza Nessuno solo a scopo di test.

  • Utilizza i Referrer HTTP per i client API in esecuzione su un browser web, in modo che solo le pagine specificate possano chiamare l'API. Questi tipi di applicazioni espongono pubblicamente le loro chiavi API, quindi consigliamo di utilizzare un account di servizio. Consulta la sezione Aggiungere limitazioni HTTP di seguito per alcuni esempi.

  • Utilizza gli indirizzi IP per limitare l'accesso alle chiavi API a determinati indirizzi IP.

  • Utilizza le app Android per le app Android. Questa opzione richiede l'aggiunta del nome pacchetto e dell'impronta digitale del certificato di firma SHA-1. Per ulteriori informazioni, consulta la sezione Aggiungere limitazioni Android nella documentazione relativa alla chiave API.

  • Utilizza le app per iOS per le app iOS. Questa opzione richiede l'aggiunta di almeno un identificatore bundle iOS per limitare le chiamate API a bundle iOS specifici.

Aggiunta di limitazioni HTTP

Le chiavi API utilizzate dalle applicazioni web devono avere restrizioni HTTP. Per aggiungere restrizioni HTTP:

  • Seleziona Referrer HTTP (siti web) nella sezione Restrizioni delle applicazioni.

  • Inserisci almeno una limitazione nella sezione Restrizioni relative ai siti web.

  • Se il tuo dominio supporta sia HTTP che HTTPS, entrambe le limitazioni devono essere aggiunte separatamente.

  • Facoltativamente, puoi utilizzare caratteri jolly (*) per il sottodominio e/o il percorso.

La tabella seguente mostra scenari di esempio e restrizioni, da quella più restrittiva a quella meno restrittiva. Ti consigliamo di utilizzare l'esempio più restrittivo, adatto al tuo caso d'uso.

Scenario Limitazioni
Consenti un URL specifico.

Aggiungi una singola limitazione con un percorso esatto. Ad esempio:

  • https://www.example.com/path
Consenti qualsiasi URL in un singolo sottodominio o dominio semplice.

Devi impostare almeno due restrizioni per consentire un intero dominio.

  1. Imposta una limitazione per il dominio, senza la barra finale. Ad esempio:
    • https://www.example.com
    • https://sub.example.com
    • https://example.com
  2. Imposta una seconda limitazione per il dominio che include un carattere jolly per il percorso. Ad esempio:
    • https://www.example.com/*
    • https://sub.example.com/*
    • https://example.com/*

    Se il tuo dominio consente HTTP, devi aggiungere ulteriori restrizioni separatamente per gli URL HTTP.

Consenti gli URL di qualsiasi sottodominio in un singolo dominio.

Devi impostare due restrizioni: la prima sul sottodominio e la seconda un carattere jolly per il percorso. Nessuna delle limitazioni prevede una barra finale. Ad esempio:

  • https://*.example.com
  • https://*.example.com/*

Se il tuo dominio consente HTTP, devi aggiungere ulteriori restrizioni separatamente per gli URL HTTP.

Aggiunta di limitazioni API

Le restrizioni delle API specificano quali API possono essere chiamate utilizzando la chiave API. Tutte le chiavi API utilizzate dalle applicazioni di produzione devono avere limitazioni API.

Per impostare limitazioni delle API:

  1. Nella sezione Restrizioni API, fai clic su Limita chiave.

  2. Seleziona tutte le API dal menu a discesa a cui verrà utilizzata la tua chiave API.

  3. Fai clic su Salva.

Limiti per progetto

Puoi creare 300 chiavi API per progetto. Si tratta di un limite di sistema e non può essere modificato utilizzando una richiesta di aumento di quota.

Se sono necessarie più chiavi API, devono essere partizionate in più progetti.

Passaggi successivi