Questa pagina descrive come attivare l'accesso basato su certificati (CBA) con i certificati di cui è stato eseguito il provisioning per la verifica degli endpoint.
Puoi utilizzare la verifica degli endpoint per eseguire automaticamente il provisioning di certificati autofirmati per un dispositivo. I certificati di cui è stato eseguito il provisioning per la verifica degli endpoint ti consentono di utilizzare CBA senza un'infrastruttura a chiave pubblica dell'infrastruttura. Questi certificati vengono archiviati nel portachiavi su macOS, negli store dei certificati su Windows e nei file system su Linux.
Se disponi di un'infrastruttura PKI, consulta Attiva l'accesso basato su certificati con i certificati aziendali per abilitare CBA.
Puoi abilitare i certificati di cui è stato eseguito il provisioning per la verifica degli endpoint nei seguenti sistemi operativi:
- macOS e Windows utilizzando il browser Chrome
- macOS, Windows e Linux utilizzando Google Cloud CLI
Se il tuo sistema operativo non è elencato, consulta Utilizzare sistemi operativi non completamente supportati.
Prima di iniziare
Prima di continuare, assicurati di soddisfare i seguenti requisiti:
Hai creato livelli di accesso CBA per il tuo progetto Google Cloud.
Puoi applicare il controllo delle autorizzazioni basato sui criteri alle tue risorse Google Cloud utilizzando uno dei seguenti metodi:
- (Consigliato) Configura le regole per gli utenti applicando le regole basate su certificati con criteri di accesso sensibile al contesto.
- Configura le regole relative ai dati applicando l'accesso basato su certificato con i Controlli di servizio VPC.
Devi disporre dell'autorizzazione per eseguire la procedura di connessione mTLS utilizzando un certificato client valido.
Configurare la verifica degli endpoint
Segui le istruzioni per installare l'estensione Chrome Endpoint Verification. per tutti i dispositivi degli utenti della tua organizzazione. L'estensione esegue il provisioning autofirmato sui tuoi dispositivi e sincronizza i metadati dei certificati con Google Cloud.
Installa l'app helper Verifica endpoint. Questa app è obbligatoria per utilizzare la verifica degli endpoint con CBA.
Configurare il browser Chrome degli utenti
Per configurare l'account utente Il browser Chrome per utilizzare i certificati di cui è stato eseguito il provisioning per la verifica degli endpoint. devi configurare il criterio di Chrome AutoSelectCertificateForURLs per consentire Verifica degli endpoint per 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 Google, aggiungi la criterio AutoSelectCertificateForUrls.
- Vai a Dispositivi > Chrome > Impostazioni > Impostazioni utente e browser > Certificati client.
- Seleziona l'unità organizzativa appropriata.
Aggiungi un criterio. L'esempio seguente aggiunge il criterio AutoSelectCertificateForUrls:
{"pattern":"https://[*.]clients6.google.com","filter":{"ISSUER":{"CN":"Google Endpoint Verification"}}} {"pattern":"https://console-secure.cloud.google.com","filter":{"ISSUER":{"CN":"Google Endpoint Verification"}}} {"pattern":"https://storage.mtls.cloud.google.com","filter":{"ISSUER":{"CN":"Google Endpoint Verification"}}}
Una volta completata la configurazione, gli utenti possono accedere alle risorse Google Cloud protette con il browser Chrome all'indirizzo console-secure.cloud.google.com.
(Facoltativo) Verificare 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. Su ChromeOS, il valore di Si applica a è Utente corrente.
- Assicurati che lo stato del criterio non presenti conflitti. Se lo stato presenta un conflitto, consulta Comprendere la gestione dei criteri di Chrome per informazioni.
Configurazione degli strumenti a riga di comando
Puoi configurare i seguenti strumenti per utilizzare i certificati di cui è stato eseguito il provisioning per la verifica degli endpoint:
- Google Cloud CLI
- L'interfaccia a riga di comando Terraform (gcloud CLI è necessaria per installare e configurare i componenti helper.
Poiché i certificati dei dispositivi sono archiviati nei keystore di macOS e Windows, il client gcloud è in bundle con il componente open source Enterprise Certificate Proxy (ECP) per interagire con le API di gestione delle chiavi.
Se utilizzi un sistema Windows, devi disporre del runtime di Visual Studio C++ libreria installata.
- Installa l'interfaccia a riga di comando gcloud. Installa con l'opzione Python in bundle attivata.
- Attiva CBA.
Per macOS e Linux, scarica ed esegui lo script
install.sh
../google-cloud-sdk/install.sh
Gli utenti Linux devono andare al passaggio Attivare i certificati di provisioning per la verifica CBA e degli endpoint. Gli utenti macOS e Windows devono completare i passaggi che seguono.
Installa il componente helper ECP con gcloud CLI.
gcloud components install enterprise-certificate-proxy
Inizializza la configurazione del certificato ECP con gcloud CLI.
macOS
gcloud auth enterprise-certificate-config create macos \ --issuer="Google Endpoint Verification"
Windows
gcloud auth enterprise-certificate-config create windows \ --issuer="Google Endpoint Verification" \ --provider=current_user \ --store=MY
(Facoltativo) Configura manualmente il certificato ECP eseguendo questo .
macOS
La configurazione ECP è archiviata in un file JSON, situato in
~/.config/gcloud/certificate_config.json
.{ "cert_configs": { "macos_keychain": { "issuer": "Google Endpoint Verification" } }, "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
La configurazione ECP è memorizzata in un file JSON, situato in
%APPDATA%\gcloud\certificate_config.json
.{ "cert_configs": { "windows_store": { "store": "MY", "provider": "current_user", "issuer":"Google Endpoint Verification" } }, "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" } }
Attiva i certificati di provisioning di CBA e verifica degli endpoint.
Per gcloud CLI, esegui questo comando.
gcloud config set context_aware/use_client_certificate true
Per tutti gli altri strumenti a riga di comando, incluso Terraform, imposta la variabile di ambiente.
export GOOGLE_API_USE_CLIENT_CERTIFICATE=1
Utilizzo di sistemi operativi non completamente supportato
Se il sistema operativo in uso non è nell'elenco dei dispositivi operativi supportati sistemi Google e vuoi utilizzare il provisioning di Verifica degli endpoint certificati, puoi escludere gli ambienti dall'applicazione forzata basata su certificati e proteggerli con altri tipi di applicazione delle norme. Ad esempio, per usando criteri relativi ai dispositivi di proprietà dell'azienda.
L'applicazione basata sui certificati offre una protezione maggiore rispetto ad altre tipi di applicazione, in quanto applica ogni richiesta proveniente da un dispositivo tramite l'handshake mTLS.
Di seguito è riportato un esempio di come escludere gli ambienti dagli ambienti basati su certificati dell'applicazione delle norme e di proteggerle con un altro tipo di applicazione.
In questo esempio, un'organizzazione utilizza dispositivi macOS, Windows e ChromeOS. L'organizzazione vuole proteggere l'accesso proveniente nella console Google Cloud.
Creare un livello di accesso che applica l'accesso basato su certificati per tutti i dispositivi, ad eccezione di Dispositivi ChromeOS per cui è richiesto un criterio relativo ai dispositivi di proprietà dell'azienda. Sostituisci il file YAML con la seguente espressione personalizzata:
certificateBindingState(origin, device) == CertificateBindingState.CERT_MATCHES_EXISTING_DEVICE || (device.os_type == OsType.DESKTOP_CHROME_OS && device.is_corp_owned_device)
Completa i passaggi delle procedure precedenti.