Emetti un certificato utilizzando Terraform
Scopri come utilizzare Terraform con Certificate Authority Service per eseguire le seguenti operazioni:
- Crea un pool di CA e una CA radice nel nuovo pool di CA.
- Crea un pool di CA e una CA subordinata al suo interno firmata dalla CA radice.
- Genera una nuova richiesta di firma del certificato (CSR).
- Utilizza la CSR generata per richiedere un certificato dal pool di CA che contiene la CA subordinata.
Terraform è un software open source che consente di creare e gestire le risorse del servizio CA utilizzando il paradigma Infrastructure as Code. Questa guida rapida utilizza il Google Cloud provider Terraform per Terraform.
Per seguire le indicazioni dettagliate per questa attività direttamente nella Google Cloud console, fai clic su Procedura guidata:
Prima di iniziare
Assicurati di disporre del ruolo IAM Amministratore di servizio CA (roles/privateca.admin). Se non disponi di questo ruolo IAM, consulta
Concedi un singolo ruolo
per informazioni sulla concessione di questo ruolo.
Crea un Google Cloud progetto
- Accedi al tuo Google Cloud account. 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 senza costi per l'esecuzione, il test e il deployment dei workload.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the CA Service API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the CA Service API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.
Installa Google Cloud CLI
Se non l'hai ancora fatto, installa Google Cloud CLI. Quando richiesto, scegli il progetto che hai selezionato o creato in precedenza.
Se hai già installato Google Cloud CLI, aggiornalo eseguendo il
gcloud components update comando:
gcloud components update
Esempio di configurazione Terraform
Esegui il file di configurazione Terraform
Per applicare la configurazione Terraform in un Google Cloud progetto, completa i passaggi nelle sezioni seguenti.
Prepara Cloud Shell
- Avvia Cloud Shell.
-
Imposta ilprogetto predefinito in cui vuoi applicare le configurazioni Terraform. Google Cloud
Devi eseguire questo comando una sola volta per progetto e puoi eseguirlo in qualsiasi directory.
export GOOGLE_CLOUD_PROJECT=PROJECT_ID
Le variabili di ambiente vengono sostituite se imposti valori espliciti nel file di configurazione Terraform
Prepara la directory
Ogni file di configurazione Terraform deve avere la propria directory (chiamata anche modulo radice).
-
In Cloud Shell, crea una directory e un nuovo
file al suo interno. Il nome del file deve avere l'
.tfestensione, ad esempiomain.tf. In questo tutorial, il file viene chiamatomain.tf.mkdir DIRECTORY && cd DIRECTORY && touch main.tf
-
Se stai seguendo un tutorial, puoi copiare il codice campione in ogni sezione o passaggio.
Copia il codice campione nel file
main.tfappena creato.Facoltativamente, copia il codice da GitHub. Questa operazione è consigliata quando lo snippet Terraform fa parte di una soluzione end-to-end.
- Rivedi e modifica i parametri di esempio da applicare al tuo ambiente.
- Salva le modifiche.
-
Inizializza Terraform. Devi eseguire questa operazione una sola volta per directory.
terraform init
Facoltativamente, per utilizzare la versione più recente del provider Google, includi l'opzione
-upgrade:terraform init -upgrade
Applica le modifiche
-
Rivedi la configurazione e verifica che le risorse che Terraform creerà o
aggiornerà corrispondano alle tue aspettative:
terraform plan
Apporta le correzioni necessarie alla configurazione.
-
Applica la configurazione Terraform eseguendo il comando seguente e inserendo
yesquando richiesto:terraform apply
Attendi che Terraform visualizzi il messaggio "Apply complete!".
- Apri il tuo Google Cloud progetto per visualizzare i risultati. Nellaconsole, vai alle risorse nell'interfaccia utente per assicurarti che Terraform le abbia create o aggiornate. Google Cloud
Esegui la pulizia
Per evitare che al tuo Google Cloud account vengano addebitati costi relativi alle risorse impiegate in questa guida rapida, elimina il pool di CA e tutte le risorse definite nel file di configurazione di Terraform:
terraform destroy
Quando richiesto, inserisci yes.
Se hai creato un nuovo progetto per questa guida rapida, ma non ne hai più bisogno, allora elimina il progetto.
Passaggi successivi
- Scopri di più sull'esecuzione di comandi con Cloud Shell.
gcloud - Scopri di più sull'utilizzo di Terraform con Google Cloud.
- Scopri di più sull'utilizzo di Terraform con il servizio CA.
- Leggi la documentazione di Terraform sul supporto del servizio CA.
- Inizia a utilizzare il Google Cloud provider.