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.

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

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

Sebbene un account di servizio possa eseguire tutte queste operazioni, Apigee consiglia di creare più account di servizio, ciascuno assegnato a un'attività specifica e ciascuno con il proprio insieme di autorizzazioni. In questo modo, la sicurezza viene migliorata suddividendo l'accesso e limitando l'ambito e i 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 uno o più ruoli specifici che gli consentano di svolgere la sua funzione.

La tabella seguente descrive gli account di servizio per i componenti ibride:

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, come описано в Backup e ripristino.
apigee-distributed-trace Agente Cloud Trace
roles/cloudtrace.agent
Consente al piano di runtime ibrido di partecipare al monitoraggio 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-org-admin Amministratore dell'organizzazione Apigee
roles/apigee.admin
Ti consente di chiamare l'API getSyncAuthorization e l'API setSyncAuthorization. Poiché Apigee Org Admin è un ruolo esterno al piano di runtime, non puoi assegnarlo all'account di servizio con lo strumento create-service-account.
apigee-synchronizer Gestore sincronizzatore Apigee
roles/apigee.synchronizerManager
Consente al sincronizzatore di scaricare i bundle di proxy e i dati di configurazione dell'ambiente. Consente inoltre il funzionamento della funzionalità di traccia.
apigee-udca Apigee Analytics Agent
roles/apigee.analyticsAgent
Consente il trasferimento di dati di analisi, traccia e stato di implementazione al piano di gestione.
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 file della chiave dell'account di servizio scaricata.

Oltre a creare gli account di servizio elencati in questa tabella, devi anche scaricare le relative chiavi private. In un secondo momento, utilizzerai queste chiavi per generare token di accesso in modo da poter accedere alle API Apigee.

Crea gli account di servizio

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

Ognuna di queste è descritta nelle sezioni seguenti.

Utilizzare lo strumento per la creazione di account di servizio

Lo strumento create-service-account (disponibile dopo aver scaricato ed espanso apigeectl) crea account di servizio specifici per i componenti ibride e assegna i ruoli richiesti. Lo strumento scarica automaticamente anche le chiavi dell'account di servizio e le archivia sul computer locale nella directory specificata.

Per creare account di servizio con lo strumento create-service-account:

  1. Scarica ed espandi apigeectl (se non l'hai già fatto), come descritto in Scaricare e installare apigeectl.
  2. Crea una directory per archiviare le chiavi dell'account di servizio. Ad esempio:
    mkdir ./service-accounts
  3. Esegui i seguenti comandi:
    ./tools/create-service-account apigee-metrics ./service-accounts
    ./tools/create-service-account apigee-synchronizer ./service-accounts
    ./tools/create-service-account apigee-distributed-trace ./service-accounts
    ./tools/create-service-account apigee-udca ./service-accounts
    ./tools/create-service-account apigee-mart ./service-accounts
    ./tools/create-service-account apigee-cassandra ./service-accounts
    ./tools/create-service-account apigee-logger ./service-accounts

    Questi comandi creano la maggior parte degli account richiesti e memorizzano le relative chiavi nella directory ./service-accounts.

    Se questi comandi non vanno a buon fine, assicurati di fare riferimento a una directory esistente in cui memorizzare i file delle chiavi.

    Per ulteriori informazioni sull'utilizzo di create-service-account, consulta la documentazione di riferimento di create-service-account.

Utilizzare la console Google Cloud

Puoi creare account di servizio con la console Google Cloud.

Per creare account di servizio con la console Google Cloud:

  1. Apri la console Google Cloud e accedi con l'account utente che hai creato nel passaggio 1: creazione di un account Google Cloud.
  2. Seleziona il progetto che hai creato nel passaggio 2: creazione di un progetto Google Cloud.
  3. Seleziona IAM e amministrazione > Account di servizio.

    La console mostra la visualizzazione Account di servizio. Questa visualizzazione mostra un elenco degli account di servizio del progetto. Nella maggior parte dei casi, non sono ancora presenti account, anche se nell'elenco potrebbero essere presenti service account predefiniti, a seconda di come hai creato il progetto.

  4. Per creare un nuovo account di servizio, fai clic su + Crea account di servizio nella parte superiore della visualizzazione.

    Viene visualizzata la visualizzazione Dettagli account di servizio.

  5. Nel campo Nome account di servizio, inserisci il nome dell'account di servizio.

    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 Logs Writer apigee-logger.

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

    Quando inserisci un nome, Google Cloud genera un ID account di servizio univoco, strutturato come un indirizzo email, come mostrato nell'esempio seguente:

    ID di esempio di apigee-logger@hybrid-42.iam.gserviceaccount.com

    Se vuoi, puoi aggiungere una descrizione nel campo Descrizione account di servizio. Le descrizioni sono utili per ricordare per cosa viene utilizzato un determinato account di servizio.

  6. Fai clic su Crea.

    Google Cloud crea un nuovo account di servizio e mostra la visualizzazione Autorizzazioni account di servizio, come mostrato nell'esempio seguente:

    Creare un account di servizio senza autorizzazioni selezionate

    Utilizza questa visualizzazione per assegnare un ruolo al nuovo account di servizio.

  7. Fai clic sull'elenco a discesa Seleziona un ruolo.
  8. Seleziona il ruolo per l'account di servizio, come descritto in Account di servizio e ruoli utilizzati dai componenti ibride. Se i ruoli Apigee non vengono visualizzati nell'elenco a discesa, aggiorna la pagina.

    Ad esempio, per il componente di logging, seleziona il ruolo Scrittore di 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, come mostrato nell'esempio seguente:

    Elenco delle autorizzazioni dell'account di servizio corrispondenti ad Apigee

    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 il riquadro IAM e amministrazione in Google Cloud.

  9. Fai clic su Continua.

    Google Cloud mostra la visualizzazione Concedi agli utenti l'accesso a questo account di servizio:

    Campi per il ruolo degli utenti dell'account di servizio e il ruolo degli amministratori dell'account di servizio, pulsante per Crea chiave

  10. In Crea chiave (facoltativo), fai clic su Crea chiave.

    Google Cloud ti offre la possibilità di scaricare una chiave JSON o P12:

    Seleziona il tipo di chiave JSON o P12

  11. Seleziona JSON (il valore predefinito) e fai clic su Crea.

    Google Cloud salva il file della chiave in formato JSON sul tuo computer locale e mostra una conferma al termine dell'operazione, come mostrato nell'esempio seguente:

    Esempio di nome file.json

    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, specifichi la posizione delle chiavi dell'account di servizio utilizzando le proprietà SERVICE_NAME.serviceAccountPath.

    Queste chiavi vengono utilizzate dagli account di servizio per ottenere token di accesso, che l'account di servizio utilizza poi per inviare richieste alle API Apigee per tuo conto. (Ma non è ancora possibile, per ora ricordati solo dove li hai salvati.)

  12. Ripeti i passaggi da 4 a 11 per ogni account di servizio elencato in Account di servizio e ruoli utilizzati dai componenti ibride (tranne l'account apigee-mart, che non ha alcun ruolo associato, quindi non assegnargli un ruolo).

    Al termine, dovresti avere i seguenti account di servizio (oltre a quelli predefinite, se presenti):

    Elenco degli account di servizio. Casella di selezione colonna 1, colonna 2 Email, colonna 3 Stato, colonna 4 nome account di servizio

    Nella console Google Cloud, gli account di servizio sono indicati con l'icona tasto lato sinistro, semirettangolo lato destro, tutto sottolineato.

Dopo aver creato un account di servizio, se vuoi aggiungere o rimuovere un ruolo, devi utilizzare la visualizzazione IAM e amministrazione. 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