Tipi di account di servizio

Gli account di servizio possono essere suddivisi in due categorie: account di servizio gestiti da te e account di servizio gestiti da Google. Questa pagina descrive come viene creato e utilizzato ogni tipo di account di servizio.

Account di servizio gestiti dall'utente

Gli account di servizio gestiti dall'utente sono account di servizio che crei nei progetti. Puoi aggiornare, disabilitare, attivare ed eliminare questi account di servizio a tua discrezione. Puoi anche gestire l'accesso di altre entità a questi account di servizio.

Puoi creare account di servizio gestiti dall'utente nel tuo progetto utilizzando l'API IAM, la console Google Cloud o Google Cloud CLI.

Per impostazione predefinita, puoi creare fino a 100 account di servizio gestiti dall'utente in un progetto. Se questa quota non soddisfa le tue esigenze, puoi utilizzare la console Google Cloud per richiedere un aumento della quota. Solo gli account di servizio creati dall'utente vengono conteggiati per questa quota. Gli account di servizio predefiniti e gli account di servizio gestiti da Google no.

Quando crei un account di servizio gestito dall'utente nel progetto, scegli un nome per l'account. Questo nome viene visualizzato nell'indirizzo email che identifica l'account di servizio, che utilizza il seguente formato:

service-account-name@project-id.iam.gserviceaccount.com

Per scoprire come creare un account di servizio, vedi Creare account di servizio.

Account di servizio predefiniti

Gli account di servizio predefiniti sono account di servizio gestiti dall'utente che vengono creati automaticamente quando abiliti o utilizzi determinati servizi Google Cloud. Questi account di servizio consentono al servizio di eseguire il deployment di job che accedono ad altre risorse Google Cloud. Sei responsabile della gestione degli account di servizio predefiniti dopo la loro creazione.

Se l'applicazione viene eseguita in un ambiente Google Cloud che dispone di un account di servizio predefinito, può utilizzare le credenziali dell'account di servizio predefinito per chiamare le API Google Cloud. In alternativa, puoi creare il tuo account di servizio gestito dall'utente e utilizzarlo per l'autenticazione. Per maggiori dettagli, vedi Configurare le credenziali predefinite dell'applicazione.

Nella tabella seguente sono elencati i servizi che creano account di servizio predefiniti:

Servizio Nome account di servizio Indirizzo email
App Engine e qualsiasi servizio Google Cloud che utilizza App Engine Account di servizio predefinito di App Engine project-id@appspot.gserviceaccount.com
Compute Engine e qualsiasi servizio Google Cloud che utilizza Compute Engine Account di servizio predefinito Compute Engine project-number-compute@developer.gserviceaccount.com

Account di servizio gestiti da Google

Alcuni servizi Google Cloud hanno bisogno di accedere alle tue risorse per poter agire per tuo conto. Ad esempio, quando utilizzi Cloud Run per eseguire un container, il servizio deve accedere a tutti gli argomenti Pub/Sub che possono attivare il container.

Per soddisfare questa esigenza, Google crea e gestisce account di servizio per molti servizi Google Cloud. Questi account di servizio sono noti come account di servizio gestiti da Google. Potresti vedere gli account di servizio gestiti da Google nel criterio di autorizzazione del progetto, negli audit log o nella pagina IAM della console Google Cloud.

Gli account di servizio gestiti da Google non vengono creati nei tuoi progetti, quindi non li vedrai quando visualizzi gli account di servizio dei tuoi progetti.

Google dispone dei seguenti tipi di account di servizio gestiti da Google:

Visibilità

Gli account di servizio gestiti da Google non sono elencati nella pagina Account di servizio della console Google Cloud. Questi account di servizio non si trovano nel progetto e non puoi accedervi direttamente.

Per impostazione predefinita, anche gli account di servizio gestiti da Google non sono elencati nella pagina IAM della console Google Cloud, anche se hanno ricevuto un ruolo nel progetto. Per visualizzare le concessioni di ruoli per gli account di servizio gestiti da Google, seleziona la casella di controllo Includi concessioni di ruoli fornite da Google.

Agenti di servizio specifici per i servizi

Gli agenti di servizio sono account di servizio gestiti da Google che agiscono per conto dei singoli servizi. In molti casi, questi agenti sono necessari per il corretto funzionamento dei servizi. Ad esempio, sono gli agenti di servizio a consentire ai sink di Cloud Logging di scrivere i log nei bucket Cloud Storage.

Ogni agente di servizio è associato a una risorsa. Questa risorsa è in genere un progetto, una cartella o un'organizzazione, ma può anche essere una risorsa specifica di un servizio, ad esempio un'istanza Cloud SQL. Questa risorsa definisce l'ambito delle azioni dell'agente di servizio. Ad esempio, se un agente di servizio è associato a un progetto, agirà per conto di un servizio per il progetto e le relative risorse discendenti.

Puoi determinare a quale tipo di risorsa è associato un agente di servizio controllando il suo indirizzo email:

  • Se l'agente di servizio è associato a un progetto, una cartella o un'organizzazione, il suo indirizzo email contiene l'ID numerico del progetto, della cartella o dell'organizzazione.
  • Se l'agente di servizio è associato a una risorsa specifica del servizio, il suo indirizzo email contiene un ID progetto numerico e un identificatore univoco. L'ID progetto numerico indica il progetto proprietario della risorsa a cui è associato l'agente di servizio. L'identificatore univoco distingue l'agente di servizio da altri agenti simili nello stesso progetto.

Creazione dell'agente di servizio

Il momento esatto in cui viene creato un agente di servizio dipende dal tipo di risorsa a cui è associato.

Gli agenti di servizio associati a una risorsa specifica del servizio vengono creati al momento della creazione della risorsa. Per saperne di più su come identificare e configurare questi agenti di servizio, consulta la documentazione della risorsa associata.

Gli agenti di servizio associati a progetti, cartelle e organizzazioni vengono creati in base alle esigenze, in genere al primo utilizzo di un servizio. Se necessario, puoi anche chiedere a Google Cloud di creare agenti per un servizio prima di utilizzare il servizio. Per ulteriori informazioni, consulta Creare e concedere ruoli agli agenti di servizio.

Ruoli dell'agente di servizio

Alcune azioni in Google Cloud richiedono agli agenti di servizio di creare e accedere alle risorse per tuo conto. Ad esempio, quando crei un cluster Dataproc, l'agente di servizio Dataproc deve avere l'autorizzazione per creare istanze di Compute Engine nel progetto al fine di creare il cluster.

Per ottenere questo accesso, gli agenti di servizio richiedono ruoli IAM specifici. A molti agenti di servizio a livello di progetto vengono concessi automaticamente i ruoli di cui hanno bisogno. I nomi di questi ruoli concessi automaticamente in genere terminano con serviceAgent o ServiceAgent. Per gli altri agenti di servizio, devi concedere loro i ruoli, in modo che il servizio funzioni correttamente. Per sapere a quali agenti di servizio vengono concessi automaticamente i ruoli, consulta la documentazione di riferimento sugli agenti di servizio.

Se chiedi a Google Cloud di creare agenti di servizio prima di utilizzare un servizio, devi concedere agli agenti di servizio i ruoli che in genere vengono concessi automaticamente. Questo perché agli agenti di servizio creati su richiesta di un utente non vengono concessi automaticamente i ruoli. Se non concedi questi ruoli agli agenti di servizio, alcuni servizi potrebbero non funzionare correttamente. Per scoprire come concedere questi ruoli agli agenti di servizio, consulta Creare e concedere ruoli agli agenti di servizio.

Agenti di servizio principali

Nel riferimento degli agenti di servizio, alcuni agenti sono identificati come agenti di servizio principali. Gli agenti di servizio principali sono agenti di servizio il cui indirizzo email viene restituito quando attivi la creazione dell'agente di servizio per un servizio.

Agente di servizio API di Google

È probabile che il criterio di autorizzazione del progetto faccia riferimento a un account di servizio denominato agente di servizio API di Google, con un indirizzo email che utilizza il seguente formato: project-number@cloudservices.gserviceaccount.com

Questo account di servizio esegue processi interni di Google per tuo conto. Viene concesso automaticamente il ruolo Editor (roles/editor) per il progetto.

Gestore dei ruoli per gli account di servizio gestiti da Google

Gli audit log per IAM potrebbero fare riferimento all'account di servizio service-agent-manager@system.gserviceaccount.com.

Questo account di servizio gestisce i ruoli concessi agli agenti di servizio. È visibile solo negli audit log.

Ad esempio, se utilizzi una nuova API, Google potrebbe creare automaticamente un nuovo agente di servizio e concedergli ruoli nel tuo progetto. La concessione di questi ruoli genera una voce di audit log, che indica che service-agent-manager@system.gserviceaccount.com ha impostato il criterio di autorizzazione per il progetto.

Passaggi successivi

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