Questa pagina descrive come attivare l'accesso basato su certificato (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 degli endpoint.
Un requisito importante del modello di accesso Zero Trust è consentire l'accesso solo ai dispositivi autorizzati. L'accesso sensibile al contesto CBA utilizza i certificati e le relative chiavi private memorizzate 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 Google Cloud progetto. Se devi creare livelli di accesso, consulta Creare livelli di accesso per l'accesso basato su certificato.
Assicurati di applicare il CBA alle tue Google Cloud risorse utilizzando uno dei seguenti metodi:
(Consigliato) Applica l'accesso basato su certificato con i criteri di accesso sensibile al contesto: configura le regole relative agli utenti.
Applica l'accesso basato su certificato con Controlli di servizio VPC: configura le regole relative ai dati.
Quando applichi il controllo tramite l'autenticazione a due fattori alle tue Google Cloud risorse, per accedere alle Google Cloud risorse è necessario che un utente autorizzato presenti anche un certificato del dispositivo valido.Google Cloud
Carica i trust anchor
Per consentire all'accesso sensibile al contesto di raccogliere e convalidare il certificato aziendale di un dispositivo, devi caricare le ancore di attendibilità utilizzate per emettere il certificato del dispositivo. I trust anchor sono il certificato CA radice autofirmato e i certificati intermedi e subordinati pertinenti. Per caricare le ancore di attendibilità: compila i seguenti passaggi:
Nella Console di amministrazione Google, vai a Dispositivi > Reti > Certificati e poi seleziona l'unità organizzativa per la quale caricare le ancore di attendibilità. 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 Attiva la verifica degli endpoint e poi 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 ha ancora un certificato CA e i certificati client corrispondenti, puoi crearli tramite il Google Cloud Certificate Authority Service. I passaggi per installare i certificati client nei keystore nativi sono diversi per ogni sistema operativo e non rientrano nell'ambito di questo documento.
Configurare 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 AutoSelectCertificateForURLs
criterio di Chrome per consentire a Endpoint Verification di cercare il certificato del dispositivo e di 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 browser e utente > Client certificate.
Seleziona l'unità organizzativa appropriata.
Aggiungi un criterio.
L'esempio seguente aggiunge il criterio
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 dell'autorità di certificazione.
Dopo questa configurazione, gli utenti possono accedere alle Google Cloud risorse protette
con il browser Chrome all'indirizzo console-secure.cloud.google.com
.
(Facoltativo) Verifica la configurazione dei criteri
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 di Si applica a è Utente corrente.
Assicurati che lo stato del criterio 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
Sono supportati i seguenti strumenti a riga di comando:
Google Cloud CLI
Interfaccia a riga di comando Terraform (l'interfaccia a riga di comando gcloud è comunque necessaria per installare e configurare i componenti di supporto).
Poiché i certificati del dispositivo sono archiviati in keystore nativi, l'interfaccia a riga di comando Google Cloud è in bundle 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 avere 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
L'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 abilita 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 di assistenza 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 dell'ECP può essere eseguita anche manualmente. Viene archiviato come file JSON nella seguente posizione sul dispositivo dell'utente:
Linux e macOS:
~/.config/gcloud/certificate_config.json
Windows:
%APPDATA%\gcloud\certificate_config.json
Consulta la documentazione di 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 Google Cloud risorse protette utilizzando gli strumenti a riga di comando attivando il flag CBA.
Per attivare la CBA per Google Cloud CLI, imposta la proprietà context_aware/use_client_certificate
su true
.
Per attivare la CBA per tutti gli altri strumenti a riga di comando, tra cui Terraform, imposta la variabile di ambiente GOOGLE_API_USE_CLIENT_CERTIFICATE
su true
.