Autenticazione per le chiamate

Questo documento fornisce informazioni supplementari su come richiamare le funzioni create utilizzando l'API Cloud Functions v2, ad esempio utilizzando gcloud functions, l'API REST o Terraform. Per informazioni dettagliate e esempi, consulta le guide sull'autenticazione delle richieste di Cloud Run. Gli argomenti trattati nelle guide di Cloud Run si applicano anche alle funzioni create utilizzando l'API Cloud Functions v2, poiché anche le funzioni v2 utilizzano il ruolo Invoker di Cloud Run (roles/run.invoker).

Per richiamare una funzione autenticata, il principale sottostante deve soddisfare i seguenti requisiti:

  • Avere l'autorizzazione per richiamare la funzione.
  • Fornisci un token di identità quando viene invocata la funzione.

Cloud Run Functions supporta due diversi tipi di identità, chiamate anche principali:

  • Account di servizio: si tratta di account speciali che fungono da identità di un soggetto non umano, come una funzione, un'applicazione o una VM. Ti offrono un modo per autenticare queste entità non umane.
  • Account utente: questi account rappresentano persone, come singoli detentori di Account Google o come parte di un'entità controllata da Google, come un gruppo Google.

Consulta la panoramica di IAM per saperne di più sui concetti di base di IAM.

Per richiamare una funzione autenticata, l'entità deve disporre dell'autorizzazione IAM invoker:

  • run.routes.invoke. In genere, tramite il ruolo Invoker di Cloud Run. Questa permission deve essere assegnata alla risorsa del servizio Cloud Run.

Per concedere queste autorizzazioni, segui i passaggi descritti nella guida Autenticazione di chiamate tra servizi di Cloud Run.

Per avere l'autorizzazione a creare, aggiornare o eseguire altre azioni amministrative su una funzione, il principale deve disporre di un ruolo appropriato. I ruoli includono le autorizzazioni che definiscono le azioni consentite all'entità. Per ulteriori informazioni, consulta Utilizzare IAM per autorizzare l'accesso.

Le funzioni basate su eventi possono essere richiamate solo dall'origine evento a cui sono sottoscritte. Le funzioni HTTP, invece, possono essere richiamate da diversi tipi di identità provenienti da luoghi diversi, ad esempio da uno sviluppatore che testa la funzione o da un altro servizio che la utilizza. Le identità devono fornire un token ID per l'autenticazione. L'account in uso deve inoltre disporre delle autorizzazioni appropriate.