Crea account di servizio Google Cloud con ruoli che consentono ai singoli componenti ibridi di Apigee di effettuare chiamate API autorizzate e scarica i file delle chiavi degli account di servizio associati. Puoi utilizzare i file delle chiavi dell'account di servizio generati da questo comando nel file di override della configurazione.
create-service-account
crea uno o più account di servizio nel progetto Google Cloud attuale o nel progetto specificato, assegna il ruolo IAM corretto all'account di servizio e scarica il file del certificato dell'account di servizio in una directory sulla macchina locale.
Lo strumento create-service-account
si trova nella
directory HYBRID_ROOT_DIR/tools
.
Per scoprire di più sugli account di servizio e leggere l'elenco completo degli account di servizio consigliati per gli ambienti di produzione, consulta quanto segue:
Puoi anche creare account di servizio nella console Google Cloud. Vedi anche Creazione e gestione degli account di servizio.
Prerequisiti
Ruolo
Lo strumento create-service-account
richiede l'installazione dell'interfaccia a riga di comando gcloud
. Gli utenti che richiamano l'utilità devono avere il ruolo Service Account Admin
.
progetto
Gli account di servizio sono associati a un progetto Google Cloud specifico. create-service-account
crea gli account di servizio nel progetto attuale o nel progetto specificato e associa i ruoli IAM agli account di servizio all'interno di quel progetto. create-service-account
utilizza l'ID progetto anche come parte del nome e dell'indirizzo email del file della chiave dell'account di servizio. Ad esempio, se il progetto è denominato my-hybrid-project, il file della chiave dell'account di servizio apigee-logger sarà denominato my-hybrid-project-apigee-logger.json
e l'indirizzo email dell'account di servizio sarà apigee-logger@my-hybrid-project.iam.gserviceaccount.com
.
Puoi specificare un progetto con il flag --project-id
.
Se non specifichi un ID progetto Cloud con il comando, create-service-account
utilizza il progetto nell'attuale configurazione del progetto gcloud.
Puoi controllare la configurazione attuale del progetto gcloud
con il seguente comando:
gcloud config list project
Se devi modificare l'ID progetto corrente, utilizza il seguente comando:
gcloud config set project PROJECT_ID
Dove PROJECT_ID è l'ID del tuo progetto Cloud attuale. Le istruzioni per creare un progetto Cloud sono illustrate nel Passaggio 2: crea un progetto Google Cloud.
Uso: create-service-account
Gli esempi seguenti mostrano l'utilizzo di create-service-account
per le attività di configurazione comuni di Apigee hybrid.
Creare account di servizio per un ambiente di produzione
In un ambiente ibrido di produzione, Apigee consiglia di utilizzare un account di servizio separato per ogni componente. Utilizza il comando seguente per creare tutti gli account di servizio per i componenti ibridi con i relativi nomi predefiniti nella directory predefinita.
./tools/create-service-account --env prod
Verranno creati i seguenti account di servizio con i file dei certificati scaricati nella
directory ./tools/service-accounts
:
Account di servizio | Ruolo IAM | File di certificazione | |
---|---|---|---|
apigee-cassandra |
roles/storage.objectAdmin |
apigee-cassandra@PROJECT_ID.iam.gserviceaccount.com |
PROJECT_ID-apigee-cassandra.json |
apigee-distributed-trace |
roles/cloudtrace.agent |
apigee-distributed-trace@PROJECT_ID.iam.gserviceaccount.com |
PROJECT_ID-apigee-distributed-trace.json |
apigee-logger |
roles/logging.logWriter |
apigee-logger@PROJECT_ID.iam.gserviceaccount.com |
PROJECT_ID-apigee-logger.json |
apigee-mart |
roles/apigeeconnect.Agent |
apigee-mart@PROJECT_ID.iam.gserviceaccount.com |
PROJECT_ID-apigee-mart.json |
apigee-metrics |
roles/monitoring.metricWriter |
apigee-metrics@PROJECT_ID.iam.gserviceaccount.com |
PROJECT_ID-apigee-metrics.json |
apigee-synchronizer |
roles/apigee.synchronizerManager |
apigee-synchronizer@PROJECT_ID.iam.gserviceaccount.com |
PROJECT_ID-apigee-synchronizer.json |
apigee-udca |
roles/apigee.analyticsAgent |
apigee-udca@PROJECT_ID.iam.gserviceaccount.com |
PROJECT_ID-apigee-udca.json |
apigee-watcher |
roles/apigee.runtimeAgent |
apigee-watcher@PROJECT_ID.iam.gserviceaccount.com |
PROJECT_ID-apigee-watcher.json |
Creare un singolo account di servizio per un ambiente non di produzione
Per gli ambienti non di produzione, ad esempio sperimentale o demo, puoi creare un singolo account di servizio denominato "apigee-non-prod" da utilizzare per tutti i componenti. A questo account di servizio saranno assegnati tutti i ruoli IAM dell'esempio precedente.
./tools/create-service-account --env non-prod
Verrà creato un singolo account di servizio denominato apigee-non-prod e verrà scaricato il file del certificato nella directory ./tools/service-accounts
:
Account di servizio | Ruoli IAM | File di certificazione | |
---|---|---|---|
apigee-non-prod |
roles/apigee.analyticsAgent |
apigee-non-prod@PROJECT_ID.iam.gserviceaccount.com |
PROJECT_ID-apigee-non-prod.json |
create-service-account syntax
Lo strumento create-service-account
utilizza la seguente sintassi:
create-service-account [flags]
Nella tabella seguente sono elencati i flag create-service-account
:
Flag | Valori | Descrizione |
---|---|---|
--dir -d |
nome directory | Specifica una directory di output per i file delle chiavi dell'account di servizio. Se la directory non esiste, verrà creata da create-service-account . Se la directory esiste già, create-service-account sovrascriverà tutti i file al suo interno che hanno lo stesso nome dei file della chiave che sta creando.
Se non specifichi una directory di output, |
--env -e |
prod non-prod |
Specifica se stai creando account di servizio per un ambiente di produzione (prod ) o un ambiente non di produzione (non-prod ).
Se esegui |
--help -h |
none | Mostra il testo della guida. |
--name -n |
nome dell'account di servizio | Specifica un nome per l'account di servizio. --name si applica solo a un singolo
account di servizio, specificato con --profile o --env non-prod .
Il nome fa anche parte del nome del file del certificato e dell'email dell'account di servizio. Ad esempio, se esegui
Se non specifichi |
‑‑profile -p |
apigee-logger apigee-metrics apigee-cassandra apigee-udca apigee-synchronizer apigee-mart apigee-watcher apigee-distributed-trace |
Solo per ambienti di produzione, specifica un singolo account di servizio da creare.
Puoi specificare un nome per l'account di servizio con il flag
Richiede |
‑‑project‑id -i |
ID progetto | L'ID del progetto Google Cloud in cui stai creando gli account di servizio.
Se non specifichi un ID progetto, |
Per maggiori informazioni sugli account di servizio utilizzati da Apigee hybrid, consulta Informazioni sugli account di servizio.
Puoi anche creare account di servizio nella console Google Cloud. Vedi anche Creazione e gestione degli account di servizio.