Informazioni sugli account di servizio

Un account di servizio è un tipo speciale di account in Google Cloud che consente ai componenti e alle applicazioni di un sistema di interagire tra loro e con altre API. Per ulteriori informazioni su Google Cloud, consulta Informazioni sui servizi Google Cloud.

Apigee hybrid utilizza gli account di servizio Google Cloud per eseguire una serie di attività, tra cui:

  • Invia dati di log e metriche
  • Richieste di traccia del pull
  • Connettiti ad API Gateway per le richieste API amministrative
  • Esegui backup
  • Scaricare i bundle proxy

Anche se un account di servizio può eseguire tutte queste operazioni, per la produzione ambienti Apigee consiglia di creare più account di servizio, ciascuno assegnato per un'attività specifica e ognuno con il proprio insieme di autorizzazioni. In questo modo viene migliorata la sicurezza tramite la suddivisione dell'accesso e la limitazione dell'ambito e dei privilegi di accesso di ogni account di servizio. Come per gli account utente, queste autorizzazioni vengono applicate assegnando uno o più ruoli all'account di servizio.

Per funzionare correttamente, Apigee hybrid richiede la creazione di diversi account di servizio. Ogni account di servizio richiede un ruolo o più ruoli specifici che gli consentano di svolgere la sua funzione.

La tabella seguente descrive gli account di servizio per i componenti ibride. I nomi assegnati a ciascun account di servizio sono i nomi predefiniti. Puoi utilizzare i nomi che preferisci, ma devono essere facili da associare allo scopo di ciascun account.

Componente* Ruolo Obbligatorio per l'installazione di base? Descrizione
apigee-cassandra Storage Object Admin
roles/storage.objectAdmin
Consente i backup di Cassandra in Cloud Storage, descritta in Backup e ripristino.
apigee-distributed-trace Agente Cloud Trace
roles/cloudtrace.agent
Consente al piano di runtime ibrido di partecipare al tracciamento delle richieste distribuite in un formato compatibile con sistemi come Google Cloud Trace e Jaeger.
apigee-logger Logs Writer
roles/logging.logWriter
Consente la raccolta dei dati di logging, come descritto in Logging. Obbligatorio solo per le installazioni di cluster non GKE.
apigee-mart Agente Apigee Connect
roles/apigeeconnect.Agent
Consente l'autenticazione del servizio MART. Il ruolo Agente Apigee Connect consente di comunicare in modo sicuro con il processo Apigee Connect, come descritto in Utilizzo Apigee Connect.
apigee-metrics Monitoring Metric Writer
roles/monitoring.metricWriter
Consente la raccolta dei dati delle metriche, come descritto nella Panoramica della raccolta di metriche.
apigee-synchronizer Gestore sincronizzatore Apigee
roles/apigee.synchronizerManager
Consente al sincronizzatore di scaricare bundle proxy e configurazione dell'ambiente e i dati di Google Cloud. Consente inoltre il funzionamento della funzionalità di traccia.
apigee-udca Apigee Analytics Agent
roles/apigee.analyticsAgent
Consente il trasferimento dei dati di traccia, analisi e stato del deployment alla gestione aereo.
apigee-watcher Apigee Runtime Agent
roles/apigee.runtimeAgent
Apigee Watcher estrae le modifiche relative agli host virtuali per un'organizzazione dal sincronizzatore e apporta le modifiche necessarie per configurare l'ingresso Istio.
* Questo nome viene utilizzato nel nome del file della chiave dell'account di servizio scaricata.

In alternativa, per gli ambienti di produzione, di test e dimostrativi, puoi utilizzare un singolo account servizio con tutti i ruoli assegnati. Questa operazione non è consigliata per gli ambienti di produzione.

Componente* Ruolo Obbligatorio per l'installazione di base? Descrizione
apigee-non-prod Apigee Analytics Agent, Apigee Connect Agent, Apigee Organization Admin, Apigee Runtime Agent, Apigee Synchronizer Manager, Cloud Trace Agent, Logs Writer, Monitoring Metric Writer, Storage Object Admin Oppure tutte le SA richieste sopra Un singolo account di servizio per ambienti di prova o demo. Consulta: Installa, parte 2, passaggio 5: crea il servizio Google Cloud.

Oltre a creare gli account di servizio elencati in questa tabella, utilizzerai le chiavi private di ciascun account per generare token di accesso in modo da poter accedere alle API Apigee. Lo strumento create-service-account scarica automaticamente i file delle chiavi in una directory sul computer locale quando crea o aggiorna gli account di servizio.

Crea gli account di servizio

Esistono diversi modi per creare account di servizio, tra cui:

Ognuna di queste opzioni è descritta nelle sezioni seguenti.

Utilizzare lo strumento create-service-account

Lo strumento create-service-account è disponibile dopo aver scaricato ed espanso apigeectl nella directory tools/. Crea account di servizio specifici per i componenti ibridi e assegna i ruoli richiesti. Lo strumento scarica automaticamente anche le chiavi dell'account di servizio e le archivia sul tuo computer locale.

Ad esempio, il comando seguente creerà tutti gli account di servizio individuali separati per un di produzione, assegnare i ruoli IAM appropriati a ciascun account di servizio e scaricare ciascun file della chiave privata dell'account nella directory ./service-accounts:

./tools/create-service-account --env prod

Il comando seguente crea un singolo account di servizio denominato apigee-non-prod con tutti i valori IAM ruoli per tutti i componenti ibridi, adatto agli ambienti demo e di test, ma non agli ambienti di produzione:

./tools/create-service-account --env non-prod

Per ulteriori informazioni sull'utilizzo di create-service-account, vedi riferimento create-service-account.

Utilizzare la console Google Cloud

Puoi creare account di servizio con la console Google Cloud.

Completa i seguenti passaggi per ogni account di servizio elencato in Account di servizio e ruoli utilizzati dai componenti ibride.

Per creare un account di servizio con la console Google Cloud e generare una chiave per l'account di servizio, procedi nel seguente modo:

  1. Crea un account di servizio:

    1. Nella console Cloud, vai alla pagina Account di servizio.

      Vai ad Account di servizio

    2. Seleziona il progetto.
    3. Fai clic su Crea account di servizio.
    4. Inserisci un nome nel campo Nome account di servizio. La console Cloud compila il campo ID account di servizio in base a questo nome.

      Apigee consiglia di utilizzare un nome che rifletta il ruolo dell'account di servizio. Puoi impostare il nome dell'account di servizio in modo che corrisponda a quello del componente che lo utilizza. Ad esempio, imposta il nome dell'account di servizio Writer log apigee-logger.

      Per ulteriori informazioni sui nomi e sui ruoli degli account di servizio, consulta Account di servizio e ruoli utilizzati dai componenti ibride.

    5. (Facoltativo) Nel campo Descrizione account di servizio, inserisci una descrizione per l'account di servizio. Le descrizioni sono utili per ricordare lo scopo di un determinato account di servizio.
    6. Fai clic su Crea e continua.
    7. Fai clic sul campo Seleziona un ruolo e seleziona un ruolo, come descritto in Account di servizio e ruoli utilizzati dai componenti ibride. Se se i ruoli Apigee non compaiono nell'elenco a discesa, aggiorna la pagina.

      Ad esempio, per il componente di logging, seleziona il ruolo Writer log.

      Se necessario, inserisci il testo per filtrare l'elenco dei ruoli per nome. Ad esempio, per elencare solo i ruoli Apigee, inserisci Apigee nel campo del filtro.

      Puoi aggiungere più di un ruolo a un account di servizio, ma Apigee consiglia di utilizzare un solo ruolo per ciascuno degli account di servizio consigliati. Per modificare i ruoli di un account di servizio dopo averlo creato, utilizza la pagina IAM nella console Cloud.

    8. Fai clic su Fine per completare la creazione dell'account di servizio.

      Non chiudere la finestra del browser. Lo utilizzerai nel passaggio successivo.

  2. Scarica una chiave JSON per l'account di servizio appena creato:

    1. Nella console Cloud, fai clic sull'indirizzo email dell'account di servizio che è stato creato.
    2. Fai clic su Chiavi.
    3. Fai clic su Aggiungi chiave, quindi su Crea nuova chiave.
    4. Fai clic su Crea. Un file della chiave JSON viene scaricato sul computer.

      Assicurati di archiviare il file della chiave in modo sicuro perché può essere utilizzato per l'autenticazione come account di servizio. Puoi spostare e rinominare il file come preferisci.

      In un secondo momento, utilizzerai alcune delle chiavi dell'account di servizio per configurare i servizi di runtime ibrida. Ad esempio, quando configuri il runtime ibrido, dovrai specificare la posizione delle chiavi del service account utilizzando le proprietà SERVICE_NAME.serviceAccountPath.

      Queste chiavi vengono utilizzate dagli account di servizio per ottenere i token di accesso, che il servizio per effettuare richieste contro le API Apigee per tuo conto. (Ma non è ancora possibile, per ora ricordati solo dove l'hai salvato.)

    5. Fai clic su Chiudi.

Dopo aver creato un account di servizio, se vuoi aggiungere o rimuovere un ruolo, devi utilizzare la pagina IAM nella console Cloud. Non puoi gestire i ruoli per gli account di servizio nella visualizzazione Account di servizio.

Utilizzare le API di creazione degli account di servizio gcloud

Puoi creare e gestire gli account di servizio con l'API Cloud Identity and Access Management.

Per ulteriori informazioni, consulta Creare e gestire gli account di servizio.

Risoluzione dei problemi