Utilizzare OAuth

L'API Address Validation supporta l'uso di OAuth 2.0 per l'autenticazione. Google supporta scenari OAuth 2.0 comuni, ad esempio quelli per un server web.

Questo documento descrive come passare un token OAuth alla chiamata all'API Address Validation nel tuo ambiente di sviluppo. Per istruzioni sull'utilizzo di OAuth in un ambiente di produzione, consulta la sezione Autenticazione a Google.

Prima di iniziare

Prima di iniziare a utilizzare l'API Address Validation, devi avere un progetto con un account di fatturazione e l'API Address Validation abilitata. Consigliamo di creare più Proprietari di progetto e Amministratori di fatturazione, in modo da avere sempre a disposizione del team qualcuno con questi ruoli. Per saperne di più, vedi Eseguire la configurazione nella console Cloud.

Informazioni su OAuth

Esistono molti modi per creare e gestire i token di accesso con OAuth in base all'ambiente di deployment.

Ad esempio, il sistema OAuth 2.0 di Google supporta le interazioni server-to-server, come quelle tra la tua applicazione e un servizio Google. Per questo scenario è necessario un account di servizio, ovvero un account che appartiene all'applicazione anziché a un singolo utente finale. La tua applicazione chiama le API di Google per conto dell'account di servizio, in modo che gli utenti non siano coinvolti direttamente. Per ulteriori informazioni sui metodi di autenticazione, consulta la sezione Autenticazione a Google.

In alternativa, puoi utilizzare l'API Address Validation come parte di un'app mobile Android o iOS. Per informazioni generali sull'utilizzo di OAuth con l'API Address Validation, incluse informazioni sulla gestione dei token di accesso per diversi ambienti di deployment, consulta Utilizzo di OAuth 2.0 per accedere alle API di Google.

Informazioni sugli ambiti OAuth

Per utilizzare OAuth con l'API Address Validation, al token OAuth deve essere assegnato l'ambito:

  • https://www.googleapis.com/auth/cloud-platform

Esempio: prova le chiamate API REST nel tuo ambiente di sviluppo locale

Se vuoi provare l'API Address Validation utilizzando un token OAuth, ma non hai una configurazione di ambiente per generare token, puoi usare la procedura descritta in questa sezione per effettuare la chiamata.

Questo esempio descrive come utilizzare il token OAuth fornito da Credenziali predefinite dell'applicazione (ADC) per effettuare la chiamata. Per informazioni sull'utilizzo di ADC per chiamare le API di Google utilizzando le librerie client, consulta Autenticazione con librerie client.

Prerequisiti

Prima di poter effettuare una richiesta REST utilizzando ADC, utilizza Google Cloud CLI per fornire le credenziali ad ADC:

  1. Se non lo hai già fatto, crea un progetto e abilita la fatturazione seguendo i passaggi descritti in Configurare la console Google Cloud.
  2. Installa e inizializza gcloud CLI.
  3. Esegui questo comando gcloud sulla macchina locale per creare il file delle credenziali:

    gcloud auth application-default login
  4. Viene visualizzata una schermata di accesso. Dopo l'accesso, le tue credenziali vengono archiviate nel file delle credenziali locali utilizzato da ADC.

Per ulteriori informazioni, consulta la sezione Ambiente di sviluppo locale della documentazione relativa alla fornitura delle credenziali per le credenziali predefinite dell'applicazione.

crea una richiesta REST

In questo esempio, passi due intestazioni di richiesta:

  • Passa il token OAuth nell'intestazione Authorization utilizzando il seguente comando per generarlo:

    gcloud auth application-default print-access-token

    L'ambito del token restituito è https://www.googleapis.com/auth/cloud-platform.

  • Passa l'ID o il nome del progetto Google Cloud con fatturazione abilitata nell'intestazione X-Goog-User-Project. Per scoprire di più, consulta Configurare nella console Cloud.

Nell'esempio seguente viene effettuata una chiamata all'API Address Validation utilizzando un token OAuth:

curl -X POST -d '{
  "address": {
    "regionCode": "US",
    "locality": "Mountain View",
    "addressLines": ["1600 Amphitheatre Pkwy"]
  }
}' \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
-H "X-Goog-User-Project: PROJECT_ID" \
"https://addressvalidation.googleapis.com/v1:validateAddress"

Risoluzione dei problemi

Se la richiesta restituisce un messaggio di errore relativo alle credenziali dell'utente finale non supportate da questa API, consulta Credenziali utente non funzionanti.