Utilizza OAuth (auto e motori)

Per autorizzare le richieste a annotatePaths è necessario un account di servizio nella lista consentita per il progetto Google Cloud associato. Puoi quindi impersonare l'account di servizio e generare un token OAuth, che viene trasmesso come intestazione nelle richieste.

Configurare un account di servizio

Poiché solo gli account di servizio nella lista consentita sono autorizzati a chiamare annotatePaths, devi agire in qualità di account di servizio tramite il furto dell'identità degli account di servizio.

  1. Segui le istruzioni riportate in Creare un account di servizio. L'indirizzo email dell'account di servizio ha il seguente formato generale:

    SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com
    
  2. Invia l'email dell'account di servizio al tuo rappresentante aziendale Google. Il tuo rappresentante aggiunge questo account di servizio a una lista consentita autorizzata a chiamare annotatePaths.

Aggiungi utenti che possono impersonare l'account di servizio

Aggiungi un utente autorizzato a impersonare l'account di servizio:

gcloud iam service-accounts add-iam-policy-binding \
    SERVICE_ACCOUNT \
    --member=user:USER_EMAIL \
    --role=roles/iam.serviceAccountTokenCreator \
    --project=PROJECT_ID

Puoi anche aggiungere utenti autorizzati a impersonare l'account di servizio tramite la console Cloud. Vedi Creare un account di servizio.

Risolvere i problemi relativi al comando non riuscito

Se questo comando non riesce, chiedi a un proprietario del progetto di eseguirlo per te o di concederti il ruolo roles/iam.serviceAccountAdmin nell'account di servizio eseguendo:

gcloud iam service-accounts add-iam-policy-binding \
   SERVICE_ACCOUNT \
    --member=USER_EMAIL \
    --role=roles/iam.serviceAccountAdmin \
    --project=PROJECT_ID

Generare un token OAuth di breve durata

Se vuoi configurare annotatePaths utilizzando un token OAuth, ma non hai una configurazione di ambiente per generare token, segui la procedura descritta in questa sezione per ottenere un token OAuth di breve durata utilizzando gcloud CLI. (Il token scade dopo un'ora.) Per maggiori dettagli, vedi Creare credenziali di breve durata per un account di servizio. I passaggi che seguono sono una visualizzazione abbreviata di queste istruzioni.

  1. Accedi a gcloud:

    gcloud auth login
    

    gcloud apre una finestra del browser e richiede l'autorizzazione.

  2. Imposta il progetto:

    gcloud config set project PROJECT_ID
    
  3. Ottieni un token di accesso di breve durata utilizzando print-access-token:

    gcloud auth print-access-token
    

    Questo comando restituisce un token. Copia il token e inseriscilo in YOUR_ACCESS_TOKEN nel comando seguente:

    curl -X POST \
    https://iamcredentials.googleapis.com/v1/projects/-/serviceAccounts/SERVICE_ACCOUNT:generateAccessToken \
    -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
    -H "Content-Type: application/json; charset=utf-8" \
    -d '{"scope": ["https://www.googleapis.com/auth/cloud-platform"],"lifetime": "3600s"}'
    

    L'interfaccia a riga di comando restituisce il token di accesso OAuth di breve durata che ora puoi utilizzare per creare richieste a annotatePaths.

(Facoltativo) Controllare le autorizzazioni del token OAuth

Se si verificano problemi di autorizzazione, puoi verificare le autorizzazioni del token OAuth inserendo il token nel seguente URL, personalizzando OAUTH_TOKEN. (Incollalo nella barra degli indirizzi).

https://oauth2.googleapis.com/tokeninfo?access_token=OAUTH_TOKEN

La risposta deve includere un ambito di https://www.googleapis.com/auth/cloud-platform. In caso contrario, assicurati di impostare correttamente l'ambito, come mostrato nella sezione precedente.

Utilizzare OAuth in ambienti di produzione

Per istruzioni sull'utilizzo di OAuth in un ambiente di produzione, consulta Autenticazione a Google.

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.