Questa pagina descrive come attivare l'accesso basato su certificati (CBA) con i certificati aziendali.
Se non disponi di un'infrastruttura a chiave pubblica (PKI), puoi utilizzare i certificati di cui è stato eseguito il provisioning tramite la verifica endpoint.
Un requisito importante del modello di accesso Zero Trust è consentire l'accesso solo ai dispositivi autorizzati. L'accesso sensibile al contesto basato su certificati utilizza i certificati e le relative chiavi private archiviate in un keystore sicuro sul dispositivo per determinare se il dispositivo è autorizzato. Per attivare questa funzionalità, completa le seguenti procedure.
Prima di iniziare
Assicurati di aver creato livelli di accesso CBA per il tuo progetto Google Cloud . Se devi creare livelli di accesso, consulta Creare livelli di accesso per l'accesso basato su certificati.
Assicurati di applicare l'accesso basato sul contesto alle tue risorse Google Cloud utilizzando uno dei seguenti metodi:
(Consigliato) Applica l'accesso basato su certificati con i criteri di accesso sensibile al contesto: configura le regole relative agli utenti.
Imponi l'accesso basato su certificati con Controlli di servizio VPC: configura regole relative ai dati.
Quando applichi CBA alle tue risorse Google Cloud , l'accesso alle tue risorseGoogle Cloud richiede che un utente autorizzato presenti anche un certificato del dispositivo valido.
Carica i trust anchor
Per consentire all'accesso sensibile al contesto di raccogliere e convalidare il certificato aziendale di un dispositivo, devi caricare i trust anchor utilizzati per emettere il certificato del dispositivo. I trust anchor sono il certificato CA radice autofirmato e i certificati intermedi e subordinati pertinenti. Per caricare gli ancoraggi attendibili, completa i seguenti passaggi:
Nella Console di amministrazione Google, vai a Dispositivi > Reti > Certificati, quindi seleziona l'unità organizzativa per cui caricare gli ancoraggi attendibili. Assicurati che l'unità organizzativa selezionata contenga gli utenti a cui vuoi concedere l'accesso.
Seleziona Aggiungi certificato e inserisci un nome per il certificato radice.
Fai clic su Carica per caricare il certificato.
Seleziona Abilita la verifica degli endpoint, quindi fai clic su Aggiungi.
Il certificato da caricare deve essere il certificato CA, ovvero l'emittente dei certificati client installati sui dispositivi aziendali. Se la tua azienda non dispone ancora di un certificato CA e dei certificati client corrispondenti, puoi crearli tramite il Google Cloud Certificate Authority Service. I passaggi per installare i certificati client nei keystore nativi variano a seconda del sistema operativo e non rientrano nell'ambito di questo documento.
Configura il browser Chrome degli utenti in modo che utilizzi il certificato aziendale
Segui le istruzioni riportate in Configurare la verifica degli endpoint per installare l'estensione Endpoint Verification per Chrome per tutti gli utenti della tua organizzazione. Questa estensione viene utilizzata per sincronizzare i metadati dei certificati con il backend di Google Cloud.
Dopo aver configurato l'estensione del browser, configura il criterio AutoSelectCertificateForURLs
di Chrome per
consentire a Endpoint Verification di cercare il certificato del dispositivo e raccoglierlo tramite Chrome.
Assicurati che il browser Chrome degli utenti sia gestito da Chrome Browser Cloud Management:
Nella Console di amministrazione, aggiungi il criterio
AutoSelectCertificateForUrls
:Vai a Dispositivi > Chrome > Impostazioni > Impostazioni utente e browser > Certificati client.
Seleziona l'unità organizzativa appropriata.
Aggiungi una policy.
L'esempio seguente aggiunge la policy
AutoSelectCertificateForUrls
:{"pattern":"https://[*.]clients6.google.com","filter":{"ISSUER":{"CN":<CERT_ISSUER>}}} {"pattern":"https://console-secure.cloud.google.com","filter":{"ISSUER":{"CN":<CERT_ISSUER>}}} {"pattern":"https://storage.mtls.cloud.google.com","filter":{"ISSUER":{"CN":<CERT_ISSUER>}}}
Nell'esempio,
CERT_ISSUER
è il nome comune del certificato CA.
Dopo questa configurazione, gli utenti possono accedere alle risorse protette Google Cloud
con il browser Chrome all'indirizzo console-secure.cloud.google.com
.
Verificare la configurazione dei criteri (facoltativo)
Nel browser Chrome, inserisci
chrome://policy
.Verifica che
AutoSelectCertificateForUrls
sia elencato in Criteri di Chrome.Verifica che il valore di Si applica a sia Computer. Sul sistema operativo Chrome, il valore per Si applica a è Utente corrente.
Assicurati che lo Stato della policy non sia Conflitto. Se lo stato presenta un conflitto, consulta Comprendere la gestione dei criteri di Chrome per informazioni.
Configurare gli strumenti a riga di comando per utilizzare il certificato aziendale
Se gli utenti della tua organizzazione devono accedere alle risorse Google Cloud dalla riga di comando, devono completare le seguenti procedure per attivare l'autenticazione basata su certificati con il certificato aziendale negli strumenti a riga di comando.
Sono supportati i seguenti strumenti a riga di comando:
Google Cloud CLI
CLI Terraform (gcloud CLI è ancora necessaria per installare e configurare i componenti helper).
Poiché i certificati del dispositivo sono archiviati in keystore nativi, l'Google Cloud CLI è raggruppata con un componente open source chiamato Enterprise Certificate Proxy (ECP) per interagire con le API di gestione delle chiavi.
Se utilizzi un sistema Windows, devi aver installato la libreria di runtime Visual Studio C++.
Sono supportati i seguenti sistemi operativi e i rispettivi keystore nativi:
macOS con portachiavi
Microsoft Windows con CryptoAPI
Linux con PKCS #11
ECP deve essere configurato con le informazioni sui metadati necessarie per individuare il certificato nei keystore.
Installa e configura ECP con Google Cloud CLI
Installa Google Cloud CLI e attiva CBA. Installa con l'opzione
bundled python
attivata.Per macOS e Linux, esegui lo script
install.sh
dopo averlo scaricato:$ ./google-cloud-sdk/install.sh
Installa il componente helper ECP con Google Cloud CLI:
gcloud components install enterprise-certificate-proxy
Inizializza la configurazione del certificato ECP con Google Cloud CLI:
Linux
$ gcloud auth enterprise-certificate-config create linux
--label=<CERT_LABEL> --module=<PKCS11_MODULE_PATH> --slot=<SLOT_ID>
Esempio:
$ gcloud auth enterprise-certificate-config create linux
--label="Google Endpoint Verification" --module=/usr/lib/x86_64-linux-gnu/pkcs11/libcredentialkit_pkcs11.so.0 --slot=0x1234567
macOS
$ gcloud auth enterprise-certificate-config create macos
--issuer=<CERT_ISSUER>
Esempio:
$ gcloud auth enterprise-certificate-config create macos
--issuer="Google Endpoint Verification"
Windows
$ gcloud auth enterprise-certificate-config create windows
--issuer=<CERT_ISSUER> --provider=<PROVIDER> --store=<STORE>
Esempio:
$ gcloud auth enterprise-certificate-config create windows
--issuer="Google Endpoint Verification" --provider=current_user --store=MY
La configurazione ECP può essere configurata anche manualmente. Viene archiviato come file JSON nel seguente percorso sul dispositivo dell'utente:
Linux e macOS:
~/.config/gcloud/certificate_config.json
Windows:
%APPDATA%\gcloud\certificate_config.json
Consulta la documentazione ECP su GitHub per altri esempi di configurazione e schema.
Linux
{
"cert_configs": {
"pkcs11": {
"label": "<CERT_LABEL>",
"slot": "<SLOT_ID>",
"module": "<PKCS11_MODULE_PATH>"
}
},
"libs": {
"ecp": "/usr/lib/google-cloud-sdk/bin/ecp",
"ecp_client": "/usr/lib/google-cloud-sdk/platform/enterprise_cert/libecp.so",
"tls_offload": "/usr/lib/google-cloud-sdk/platform/enterprise_cert/libtls_offload.so"
}
}
macOS
{
"cert_configs": {
"macos_keychain": {
"issuer": "<CERT_ISSUER>"
}
},
"libs": {
"ecp": "<YOUR_GCLOUD_INSTALL_PATH>/google-cloud-sdk/bin/ecp",
"ecp_client": "<YOUR_GCLOUD_INSTALL_PATH>/google-cloud-sdk/platform/enterprise_cert/libecp.dylib",
"tls_offload": "<YOUR_GCLOUD_INSTALL_PATH>/google-cloud-sdk/platform/enterprise_cert/libtls_offload.dylib"
}
}
Windows
{
"cert_configs": {
"windows_store": {
"store": "MY",
"provider": "current_user",
"issuer": "<CERT_ISSUER>"
}
},
"libs": {
"ecp": "C:/Users/<USERNAME>/AppData/Local/Google/Cloud SDK/google-cloud-sdk/bin/ecp.exe",
"ecp_client": "C:/Users/<USERNAME>/AppData/Local/Google/Cloud SDK/google-cloud-sdk/platform/enterprise_cert/libecp.dll",
"tls_offload": "C:/Users/<USERNAME>/AppData/Local/Google/Cloud SDK/google-cloud-sdk/platform/enterprise_cert/libtls_offload.dll"
}
}
Dopo questa configurazione, gli utenti possono accedere alle risorse protette Google Cloud utilizzando gli strumenti a riga di comando attivando il flag CBA.
Per attivare l'autenticazione basata su certificati per Google Cloud CLI, imposta la proprietà context_aware/use_client_certificate
su true
.
Per abilitare l'autenticazione basata su credenziali per tutti gli altri strumenti a riga di comando, incluso Terraform, imposta la variabile di ambiente GOOGLE_API_USE_CLIENT_CERTIFICATE
su true
.