Questa pagina spiega come configurare le identità per i workload gestite utilizzando gcloud CLI.
Questa pagina descrive anche come configurare il provisioning automatico e la gestione del ciclo di vita delle identità dei carichi di lavoro gestiti per Compute Engine. Configura i pool di autorità di certificazione (CA) per emettere certificati utilizzando Certificate Authority Service. CA Service è un servizio Google Cloud scalabile e ad alta disponibilità che semplifica e automatizza il deployment, la gestione e la sicurezza dei servizi CA. Puoi creare istanze di macchine virtuali (VM) per le quali è stato eseguito il provisioning con credenziali X.509 dal pool di CA configurato. Queste credenziali possono essere utilizzate per stabilire connessioni mTLS tra i workload.
Prima di iniziare
Create or select a Google Cloud project.
-
Create a Google Cloud project:
gcloud projects create PROJECT_ID
Replace
PROJECT_ID
with a name for the Google Cloud project you are creating. -
Select the Google Cloud project that you created:
gcloud config set project PROJECT_ID
Replace
PROJECT_ID
with your Google Cloud project name.
-
Richiedi l'accesso all'anteprima delle identità di carico di lavoro gestite.
Scopri di più sulle identità dei carichi di lavoro gestiti.
Scopri di più sull'emissione di certificati utilizzando Certificate Authority Service.
Scopri come autenticare i carichi di lavoro Compute Engine utilizzando le identità di carico di lavoro gestite.
Enable the IAM and Certificate Authority Service APIs:
gcloud services enable iam.googleapis.com
privateca.googleapis.com Configura Google Cloud CLI in modo da utilizzare il progetto aggiunto alla lista consentita per la fatturazione e la quota.
gcloud config set billing/quota_project PROJECT_ID
Sostituisci PROJECT_ID con l'ID del progetto che è stato aggiunto alla lista consentita per l'anteprima dell'identità del carico di lavoro gestito.
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per creare identità del workload gestite e eseguire il provisioning dei certificati di identità del workload gestite, chiedi all'amministratore di concederti i seguenti ruoli IAM nel progetto:
-
Per creare e configurare le identità per i carichi di lavoro gestiti:
-
Amministratore pool Workload Identity IAM (
roles/iam.workloadIdentityPoolAdmin
) -
Amministratore account di servizio (
roles/iam.serviceAccountAdmin
)
-
Amministratore pool Workload Identity IAM (
-
Per creare e configurare i pool di CA:
Amministratore servizio CA (
roles/privateca.admin
)
Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.
Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.
In alternativa, il ruolo di base Proprietario IAM (roles/owner
) include anche le autorizzazioni per configurare le identità per i workload gestiti.
Non dovresti concedere ruoli di base in un ambiente di produzione, ma puoi farlo in un ambiente di sviluppo o di test.
Panoramica
Per utilizzare le identità di carico di lavoro gestite per le tue applicazioni, devi eseguire le seguenti attività:
Amministratore della sicurezza:
- Crea identità del workload gestite in un pool di identità del workload.
- Definisci un criterio di attestazione del carico di lavoro e crea un account di servizio.
- Configura Certificate Authority Service per emettere certificati per le identità per i carichi di lavoro gestiti.
- Autorizza le identità per i carichi di lavoro gestite a richiedere certificati dal pool di CA.
- Definisci la configurazione dell'attendibilità e dell'emissione dei certificati.
- Crea un file di configurazione per caricare i metadati del partner per una VM.
Amministratore di Compute:
Abilita le identità di carico di lavoro gestite per i carichi di lavoro in esecuzione in Compute Engine:
- Per le VM per privati.
- Per i gruppi di istanze gestite (MIG).
Creare identità di workload gestite
Le identità di workload gestite consentono a Google Cloud di eseguire il provisioning automatico delle credenziali per le identità del pool di identità di workload sui tuoi workload. Le identità di carico di lavoro vengono definite all'interno di un pool di identità di carico di lavoro e sono organizzate in confini amministrativi chiamati namespaces.
Crea un pool di identità del workload
Per creare identità del workload gestite, devi creare un pool in modalità TRUST_DOMAIN
. Per creare un pool di identità di workload per le identità di workload gestite, utilizza il comando workload-identity-pools create
.
gcloud iam workload-identity-pools create POOL_ID \ --location="global" \ --mode="TRUST_DOMAIN"
Sostituisci quanto segue:
POOL_ID
: l'ID univoco del pool. L'ID deve essere compreso tra 4 e 32 caratteri e può contenere solo caratteri alfanumerici minuscoli e trattini. Inoltre, deve iniziare e terminare con un carattere alfanumerico. Una volta creato un pool di identità del carico di lavoro, non puoi modificarne l'ID.
Per verificare che il pool di identità del tuo carico di lavoro sia stato creato in modalità TRUST_DOMAIN
, utilizza il comando workload-identity-pools describe
.
gcloud iam workload-identity-pools describe POOL_ID \ --location="global"
L'output del comando dovrebbe essere simile al seguente:
mode: TRUST_DOMAIN name: projects/PROJECT_NUMBER/locations/global/workloadIdentityPools/POOL_ID state: ACTIVE
Se mode: TRUST_DOMAIN
non è presente nelloutput comando, verifica
che il progetto sia stato aggiunto alla lista consentita per la preview dell'identità del workload gestito e che tu abbia configurato correttamente la gcloud CLI in modo da utilizzare il progetto corretto per la fatturazione e la quota. Potresti dover eseguire l'aggiornamento a una versione più recente della gcloud CLI.
Crea uno spazio dei nomi
Il comando workload-identity-pools namespaces create
consente di creare uno spazio dei nomi in un pool di identità del workload.
gcloud iam workload-identity-pools namespaces create NAMESPACE_ID \ --workload-identity-pool="POOL_ID" \ --location="global"
Sostituisci quanto segue:
NAMESPACE_ID
: l'ID univoco dello spazio dei nomi. L'ID deve essere compreso tra 2 e 63 caratteri, deve contenere solo caratteri alfanumerici minuscoli e trattini e deve iniziare e terminare con un carattere alfanumerico. Una volta creato uno spazio dei nomi, non puoi modificarne l'ID.POOL_ID
: l'ID pool di identità del workload creato in precedenza.
Creare un'identità del workload gestita
Il comando workload-identity-pools managed-identities create
consente di creare un'identità del workload gestita in un pool di identità del workload.
gcloud iam workload-identity-pools managed-identities create MANAGED_IDENTITY_ID \ --namespace="NAMESPACE_ID" \ --workload-identity-pool="POOL_ID" \ --location="global"
Sostituisci quanto segue:
MANAGED_IDENTITY_ID
: l'ID univoco per l'identità gestita. L'ID deve essere compreso tra 2 e 63 caratteri, contenere solo caratteri alfanumerici minuscoli e trattini e iniziare e terminare con un carattere alfanumerico. Dopo aver creato un'identità del carico di lavoro gestito, non puoi modificarne l'ID.NAMESPACE_ID
: l'ID spazio dei nomi creato in precedenza.POOL_ID
: l'ID pool di identità del workload creato in precedenza.
L'ID identità del carico di lavoro gestito è l'identificatore SPIFFE, che è formato come segue:
spiffe://POOL_ID.global.PROJECT_NUMBER.workload.id.goog/ns/NAMESPACE_ID/sa/MANAGED_IDENTITY_ID
Definire un criterio di attestazione del carico di lavoro
Questa sezione descrive come configurare un criterio di attestazione. Questo criterio determina quali attributi vengono utilizzati da Google Cloud IAM per verificare l'identità del carico di lavoro. Dopo la verifica, il carico di lavoro chiamante può ricevere una credenziale. La verifica si basa su uno dei seguenti attributi del carico di lavoro:
- ID istanza VM
- Indirizzo email dell'account di servizio allegato
- UID del account di servizio collegato
Definire un criterio di attestazione del carico di lavoro con regole di attestazione
Per creare un criterio di attestazione che consenta al tuo carico di lavoro di utilizzare l'identità gestita, segui questi passaggi:
Decidi se vuoi creare un criterio di attestazione che consenta al tuo workload di attestare l'identità gestita utilizzando il relativo account di servizio collegato o l'ID istanza.
Crea un file di criteri di attestazione in formato JSON.
(Facoltativo) Per ricevere le credenziali X.509 sull'istanza Compute Engine, devi attivare un account di servizio collegato. Ti consigliamo di collegare un nuovo account di servizio al tuo carico di lavoro creandolo prima con il seguente comando:
gcloud iam service-accounts create SERVICE_ACCOUNT_NAME
Sostituisci
SERVICE_ACCOUNT_NAME
con il nome dell'account di servizioCrea un file di criteri di attestazione in formato JSON che esegue l'attestazione in base all'indirizzo email, all'UID o all'ID istanza dell'account di servizio.
Indirizzo email dell'account di servizio
Per creare un file di criteri di attestazione che esegue l'attestazione in base all'indirizzo email dell'account di servizio, crea un file con i seguenti contenuti:
{ "attestationRules": [ { "googleCloudResource": "//compute.googleapis.com/projects/WORKLOAD_PROJECT_NUMBER/type/Instance/attached_service_account.email/SERVICE_ACCOUNT_EMAIL" } ], }
Sostituisci quanto segue:
WORKLOAD_PROJECT_NUMBER
: il numero del progetto che contiene l'istanza VM o l'account di servizio
Per ottenere il numero del progetto contenente l'identità gestita o l'account di servizio appena creato, esegui il seguente comando:
gcloud projects describe $(gcloud config get-value project) \ --format="value(projectNumber)"
SERVICE_ACCOUNT_EMAIL
: l'indirizzo email dell'account di servizio associato alla VM
UID dell'account di servizio
Per creare un file dei criteri di attestazione che esegue l'attestazione in base all'UID dell'account di servizio, crea un file con i seguenti contenuti:
{ "attestationRules": [ { "googleCloudResource": "//compute.googleapis.com/projects/WORKLOAD_PROJECT_NUMBER/type/Instance/attached_service_account.uid/SERVICE_ACCOUNT_UID" } ], }
Sostituisci quanto segue:
WORKLOAD_PROJECT_NUMBER
: il numero del progetto che contiene l'istanza VM o l'account di servizio
Per ottenere il numero del progetto che contiene l'identità gestita o l'account di servizio appena creato, esegui il seguente comando:
gcloud projects describe $(gcloud config get-value project) \ --format="value(projectNumber)"
SERVICE_ACCOUNT_UID
: l'UID dell'account di servizio associato alla VM
ID istanza
Per creare un file di criteri di attestazione che esegue l'attestazione in base all'ID istanza, crea un file con i seguenti contenuti:
{ "attestationRules": [ { "googleCloudResource": "//compute.googleapis.com/projects/WORKLOAD_PROJECT_NUMBER/uid/zones/ZONE/instances/INSTANCE_ID" } ], }
Sostituisci quanto segue:
WORKLOAD_PROJECT_NUMBER
: il numero del progetto che contiene l'istanza VM o l'account di servizio
Per ottenere il numero del progetto contenente l'identità gestita o l'account di servizio appena creato, esegui il seguente comando:
gcloud projects describe $(gcloud config get-value project) \ --format="value(projectNumber)"
INSTANCE_ID
: l'ID istanza VM Compute Engine
Il valore di un ID istanza deve provenire da un'istanza Compute Engine esistente. Per ottenere l'ID istanza, esegui questo comando:
gcloud compute instances describe INSTANCE_NAME --zone=ZONE --format="get(id)"
INSTANCE_NAME
: il nome dell'istanza VM di Compute EngineZONE
: la zona della VM Compute Engine
Crea il criterio di attestazione utilizzando il file JSON dei criteri che hai creato in precedenza in questo documento:
gcloud iam workload-identity-pools managed-identities set-attestation-rules MANAGED_IDENTITY_ID \ --namespace=NAMESPACE_ID \ --workload-identity-pool=POOL_ID \ --policy-file=PATH_TO_POLICY_JSON_FILE \ --location=global
Sostituisci quanto segue:
MANAGED_IDENTITY_ID
: l'ID univoco per l'identità gestita. L'ID deve essere compreso tra 2 e 63 caratteri, contenere solo caratteri alfanumerici minuscoli e trattini e iniziare e terminare con un carattere alfanumerico. Dopo aver creato un'identità del carico di lavoro gestito, non puoi modificarne l'ID.NAMESPACE_ID
: l'ID spazio dei nomi creato in precedenza.POOL_ID
: l'ID pool di identità del workload creato in precedenza.PATH_TO_POLICY_JSON_FILE
: il percorso del file JSON che rappresenta il criterio di attestazione creato in precedenza.
Puoi anche aggiornare il criterio aggiungendo o rimuovendo le regole di attestazione singolarmente. Per aggiungere un'attestazione al criterio di attestazione, esegui il seguente comando:
gcloud iam workload-identity-pools managed-identities add-attestation-rule MANAGED_IDENTITY_ID \ --namespace=NAMESPACE_ID \ --workload-identity-pool=POOL_ID \ --google-cloud-resource='//compute.googleapis.com/projects/WORKLOAD_PROJECT_NUMBER/type/Instance/attached_service_account.uid/SERVICE_ACCOUNT_UID' \ --location=global
Per scoprire come elencare o rimuovere le regole di attestazione, esegui i seguenti comandi:
gcloud iam workload-identity-pools managed-identities list-attestation-rules --help gcloud iam workload-identity-pools managed-identities remove-attestation-rule --help
Configurare Certificate Authority Service per emettere certificati per le identità per i carichi di lavoro gestiti
Crea la configurazione consigliata per le autorità di certificazione (CA) principali e subordinate utilizzando i pool di Certificate Authority Service. Il pool CA secondario emette i certificati di identità per carichi di lavoro X.509 alle VM.
Dopo aver configurato i pool di CA, autorizzi le identità del carico di lavoro gestito a richiedere e ricevere i certificati firmati dai pool di CA.
Configura il pool di CA radice
Utilizza l'interfaccia Google Cloud CLI per Certificate Authority Service per configurare un pool di CA radice.
gcloud
Crea il pool di CA radice.
Crea il pool di CA radice nel livello Enterprise, destinato all'emissione di certificati a lungo termine e a basso volume utilizzando il comando
gcloud privateca pools create
.gcloud privateca pools create ROOT_CA_POOL_ID \ --location=REGION \ --tier=enterprise
Sostituisci quanto segue:
- ROOT_CA_POOL_ID: un ID univoco per il pool di CA radice. L'ID può avere una lunghezza massima di 64 caratteri e deve contenere solo caratteri alfanumerici minuscoli e maiuscoli, trattini bassi o trattini. L'ID pool deve essere univoco all'interno della regione.
- REGION: la regione in cui si trova il pool di CA radice.
Per ulteriori informazioni, consulta Creare pool di CA.
Crea una CA radice nel pool di CA radice utilizzando il comando
gcloud privateca roots create
. Potrebbe esserti chiesto di attivare la CA radice se è l'unica CA nel pool di CA radice.Ad esempio, puoi utilizzare un comando simile al seguente per creare una CA principale.
gcloud privateca roots create ROOT_CA_ID \ --pool=ROOT_CA_POOL_ID \ --subject "CN=ROOT_CA_CN, O=ROOT_CA_ORGANIZATION" \ --key-algorithm="ec-p256-sha256" \ --max-chain-length=1 \ --location=REGION
Sostituisci quanto segue:
- ROOT_CA_ID: un nome univoco per la CA radice. Il nome della CA può avere una lunghezza massima di 64 caratteri e deve contenere solo caratteri alfanumerici minuscoli e maiuscoli, trattini bassi o trattini. Il nome della CA deve essere univoco all'interno della regione.
- ROOT_CA_POOL_ID: l'ID del pool di CA radice.
- ROOT_CA_CN: il nome comune della CA radice.
- ROOT_CA_ORGANIZATION: l'organizzazione della CA radice.
- REGION: la regione in cui si trova il pool di CA radice.
Per ulteriori informazioni, consulta Creare un'autorità di certificazione radice. Per ulteriori informazioni sui campi
subject
per la CA, consulta Subject.(Facoltativo) Ripeti i passaggi precedenti per creare un'altra CA radice nel pool di CA radice. Questo può essere utile per la rotazione delle CA principali.
Configura le CA subordinate
Utilizza l'interfaccia Google Cloud CLI per Certificate Authority Service per creare un pool di CA subordinate e una CA subordinata.
Se hai più scenari di emissione di certificati, puoi creare un'autorità di certificazione subordinata per ciascuno di questi scenari. Inoltre, l'aggiunta di più CA subordinate in un pool di CA consente di ottenere un migliore bilanciamento del carico delle richieste di certificato.
gcloud
Utilizza il comando gcloud privateca pools create
per creare un pool di CA subordinate.
Crea il pool di CA subordinate nel livello DevOps, pensato per l'emissione di certificati di breve durata e ad alto volume .
gcloud privateca pools create SUBORDINATE_CA_POOL_ID \ --location=REGION \ --tier=devops
Sostituisci quanto segue:
- SUBORDINATE_CA_POOL_ID: un ID univoco per il pool di CA secondario. L'ID può contenere fino a 64 caratteri e deve contenere solo caratteri alfanumerici minuscoli e maiuscoli, trattini bassi o trattini. L'ID pool deve essere univoco all'interno della regione.
- REGION: la regione in cui creare il pool di CA subordinate.
Per ulteriori informazioni, consulta Creare pool di CA.
Crea una CA secondaria nel pool di CA secondarie utilizzando il comando
gcloud privateca subordinates create
. Non modificare la modalità di emissione basata sulla configurazione predefinita.Ad esempio, puoi utilizzare un comando simile al seguente per creare una CA secondaria.
gcloud privateca subordinates create SUBORDINATE_CA_ID \ --pool=SUBORDINATE_CA_POOL_ID \ --location=REGION \ --issuer-pool=ROOT_CA_POOL_ID \ --issuer-location=REGION \ --subject="CN=SUBORDINATE_CA_CN, O=SUBORDINATE_CA_ORGANIZATION" \ --key-algorithm="ec-p256-sha256" \ --use-preset-profile=subordinate_mtls_pathlen_0
Sostituisci quanto segue:
- SUBORDINATE_CA_ID: un nome univoco per la CA subordinata. Il nome può contenere fino a 64 caratteri e deve contenere solo caratteri alfanumerici minuscoli e maiuscoli, trattini bassi o trattini. Il nome del pool deve essere univoco all'interno della regione.
- SUBORDINATE_CA_POOL_ID: il nome del pool di CA subordinate.
- REGION: la regione in cui si trova il pool di CA secondario.
- ROOT_CA_POOL_ID: l'ID del pool di CA radice.
- REGION: la regione del pool di CA radice.
- SUBORDINATE_CA_CN: il nome comune della CA subordinata.
- SUBORDINATE_CA_ORGANIZATION: il nome dell'organizzazione che emette la CA subordinata.
Per ulteriori informazioni, consulta Creare pool di CA. Per ulteriori informazioni sui campi
subject
per la CA, consulta Subject.
Autorizza le identità per i carichi di lavoro gestite a richiedere certificati dal pool CA
Le identità dei carichi di lavoro gestite richiedono autorizzazioni per richiedere certificati dal servizio CA e ottenere i certificati pubblici.
gcloud
Concedi il ruolo IAM CA Service Workload Certificate Requester (
roles/privateca.workloadCertificateRequester
) all'identità del workload gestito su ogni pool di CA secondario. Il seguente comandogcloud privateca pools add-iam-policy-binding
autorizza l'identità del workload gestito a richiedere certificati dalle catene di certificati del servizio CA.gcloud privateca pools add-iam-policy-binding SUBORDINATE_CA_POOL_ID \ --location=REGION \ --role=roles/privateca.workloadCertificateRequester \ --member="principalSet://iam.googleapis.com/projects/PROJECT_NUMBER/locations/global/workloadIdentityPools/POOL_ID/*"
Sostituisci quanto segue:
- SUBORDINATE_CA_POOL_ID: l'ID del pool di CA secondario.
- REGION: la regione del pool di CA secondario.
- PROJECT_NUMBER: il numero del progetto che contiene il pool di identità del workload.
- POOL_ID: l'ID del pool di identità del workload.
Concedi il ruolo IAM Lettore pool di servizi CA (
roles/privateca.poolReader
) ai pool di CA subordinati per l'identità di workload gestita. In questo modo, l'identità del carico di lavoro gestito viene autorizzata a ottenere i certificati X.509 firmati dalle catene di certificati della CA.gcloud privateca pools add-iam-policy-binding SUBORDINATE_CA_POOL_ID \ --location=REGION \ --role=roles/privateca.poolReader \ --member="principalSet://iam.googleapis.com/projects/PROJECT_NUMBER/locations/global/workloadIdentityPools/POOL_ID/*"
Sostituisci quanto segue:
- SUBORDINATE_CA_POOL_ID: l'ID del pool di CA secondario.
- REGION: la regione del pool di CA secondario.
- PROJECT_NUMBER: il numero del progetto che contiene il pool di identità del workload.
- POOL_ID: l'ID del pool di identità del workload.
Definisci la configurazione della attendibilità e dell'emissione dei certificati
Utilizza queste informazioni per creare un file JSON che viene caricato come dati del partner durante la creazione di una VM.
Definisci la configurazione dell'emissione dei certificati
La seguente configurazione di emissione dei certificati è obbligatoria per abilitare le identità di workload gestite per Compute Engine.
{ "primary_certificate_authority_config": { "certificate_authority_config": { "ca_pool": "projects/SUBORDINATE_CA_POOL_PROJECT_ID/locations/REGION/caPools/SUBORDINATE_CA_POOL_ID" } }, "key_algorithm": "ALGORITHM", "workload_certificate_lifetime_seconds": DURATION, "rotation_window_percentage": ROTATION_WINDOW_PERCENTAGE }
Sostituisci quanto segue:
- SUBORDINATE_CA_POOL_PROJECT_ID: l'ID del progetto che contiene il pool di CA subordinato.
- REGION: la regione in cui si trova il pool di CA subordinato.
- SUBORDINATE_CA_POOL_ID: il nome del pool di CA subordinate
- ALGORITHM: l'algoritmo di crittografia utilizzato per generare la chiave privata. I valori validi sono
rsa-2048
(predefinito),rsa-3072
,rsa-4096
,ecdsa-p256
eecdsa-p384
. - DURATION: facoltativo. La durata di validità del certificato finale in secondi. Il valore deve essere compreso tra 3600 e 315360000. Se non specificato, viene utilizzato il valore predefinito 86400. La validità effettiva del certificato rilasciato dipende anche dall'autorità di certificazione che lo ha emesso, in quanto potrebbe limitare la durata del certificato.
- ROTATION_WINDOW_PERCENTAGE: facoltativo. La percentuale della durata del certificato in cui viene attivato un rinnovo. Il valore deve essere compreso tra 1 e 100. Il valore predefinito è 66%. Devi impostare la percentuale della finestra di rotazione in base alla durata del certificato in modo che il rinnovo del certificato avvenga almeno 7 giorni dopo la sua emissione e almeno 7 giorni prima della scadenza.
Definisci la configurazione di attendibilità
La configurazione di attendibilità contiene l'insieme di trust anchor per la convalida dei certificati peer. È incluso quanto segue:
- URI delle risorse del pool di CA attendibili: un insieme di URI delle risorse del pool di CA considerati attendibili per l'emissione di certificati nello stesso dominio attendibile a cui appartengono le VM.
- Certificati CA in formato PEM: un insieme di certificati CA in formato PEM considerati attendibili per emettere certificati nello stesso dominio di attendibilità a cui appartengono le VM.
{ "POOL_ID.global.PROJECT_NUMBER.workload.id.goog": { "trust_anchors": [ { "ca_pool": "projects/SUBORDINATE_CA_POOL_PROJECT_ID/locations/REGION/caPools/SUBORDINATE_CA_POOL_ID" }, { "pem_certificate": "PEM_ENCODED_CERTIFICATE" } ] } }
Sostituisci quanto segue:
- POOL_ID: l'ID del pool di identità del workload
- PROJECT_NUMBER: il numero del progetto che contiene il pool di identità del workload
- SUBORDINATE_CA_POOL_PROJECT_ID: l'ID del progetto che contiene il pool di CA subordinato.
- REGION: la regione in cui si trova il pool di CA secondario
- SUBORDINATE_CA_POOL_ID: l'ID del pool di CA subordinato
PEM_ENCODED_CERTIFICATE: facoltativo: un insieme di certificati CA aggiuntivi in formato PEM considerati attendibili per emettere certificati nello stesso dominio di attendibilità a cui appartengono le VM. Questi certificati verranno aggiunti all'elenco di ancore di attendibilità del pool di CA secondario. Il seguente comando può essere utilizzato per codificare un file
trust-anchor.pem
in formato PEM in una stringa di una riga:cat trust-anchor.pem | sed 's/^[ ]*//g' | sed -z '$ s/\n$//' | tr '\n' $ | sed 's/\$/\\n/g'
Creare un file di configurazione per caricare i metadati del partner per una VM
Crea un file JSON contenente quanto segue:
- La configurazione dell'identità del carico di lavoro
- Le informazioni riportate in Definire la configurazione dell'emissione dei certificati
- Le informazioni riportate in Definire la configurazione dell'attendibilità
Salva il file come CONFIGS.json
. Questo file viene utilizzato durante la creazione di VM per eseguire applicazioni che utilizzano identità di workload gestite.
Il file CONFIGS.json
dovrebbe essere simile al seguente:
{ "wc.compute.googleapis.com": { "entries": { "certificate-issuance-config": { "primary_certificate_authority_config": { "certificate_authority_config": { "ca_pool": "projects/PROJECT_ID/locations/REGION/caPools/SUBORDINATE_CA_POOL_ID" } }, "key_algorithm": "ALGORITHM" }, "trust-config": { "POOL_ID.global.PROJECT_NUMBER.workload.id.goog": { "trust_anchors": [{ "ca_pool": "projects/PROJECT_ID/locations/REGION/caPools/SUBORDINATE_CA_POOL_ID" }] } } } }, "iam.googleapis.com": { "entries": { "workload-identity": "spiffe://POOL_ID.global.PROJECT_NUMBER.workload.id.goog/ns/NAMESPACE_ID/sa/MANAGED_IDENTITY_ID" } } }
Passaggi successivi
- Configura l'autenticazione dei workload tra loro utilizzando mTLS.
- Scopri di più sulla creazione di pool di CA.
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