Abilita l'accesso basato su certificati con i certificati di Verifica degli endpoint

In questa pagina viene descritto come attivare l'accesso basato su certificati (CBA) con i certificati di cui è stato eseguito il provisioning di Verifica degli endpoint.

Puoi utilizzare la verifica degli endpoint per eseguire automaticamente il provisioning dei 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 PKI. Questi certificati sono archiviati in un portachiavi su macOS, negli archivi di certificati su Windows e in file system su Linux.

Se disponi di un'infrastruttura PKI, consulta Abilitare 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 è presente nell'elenco, vedi Utilizzare sistemi operativi non completamente supportati.

Prima di iniziare

Prima di continuare, assicurati di soddisfare i seguenti requisiti:

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 di certificati autofirmati sui tuoi dispositivi e sincronizza i metadati dei certificati con Google Cloud.

Installa l'app helper Verifica degli endpoint. Questa app è necessaria per utilizzare la verifica degli endpoint con CBA.

Configura il browser Chrome degli utenti

Per configurare il browser Chrome degli utenti in modo da utilizzare i certificati di cui è stato eseguito il provisioning di Verifica degli endpoint, devi configurare il criterio di Chrome AutoSelectCertificateForURLs per consentire a Verifica degli endpoint di cercare il certificato del dispositivo e raccoglierlo tramite Chrome.

  1. Assicurati che il browser Chrome degli utenti sia gestito da Chrome Browser Cloud Management.
  2. Nella Console di amministrazione Google, aggiungi il criterio AutoSelectCertificateForUrls.

    1. Vai a Dispositivi > Chrome > Impostazioni > Impostazioni browser e utente > Certificati client.
    2. Seleziona l'unità organizzativa appropriata.
    3. Aggiungi un criterio. Nell'esempio seguente viene aggiunto 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 protette di Google Cloud con il browser Chrome all'indirizzo console-secure.cloud.google.com.

(Facoltativo) Verificare la configurazione dei criteri

  1. Nel browser Chrome, inserisci chrome://policy.
  2. Verifica che AutoSelectCertificateForUrls sia elencato sotto Criteri di Chrome.
  3. Verifica che il valore di Si applica a sia Macchina. Su ChromeOS, il valore di Si applica a è Utente corrente.
  4. Assicurati che lo stato del criterio non abbia un conflitto. Se lo stato presenta un conflitto, consulta Comprendere la gestione dei criteri di Chrome per ulteriori 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 negli archivi chiavi macOS e Windows, gcloud CLI è integrato nel componente open source 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 di Visual Studio C++.

  1. Installa gcloud CLI. Esegui l'installazione con l'opzione Python in bundle abilitata.
  2. Attiva CBA.
  3. Per macOS e Linux, scarica ed esegui lo script install.sh.

    ./google-cloud-sdk/install.sh
    
  4. Se sei un utente Linux, vai al passaggio Abilita i certificati di cui è stato eseguito il provisioning per la verifica CBA ed endpoint . Gli utenti macOS e Windows devono completare i seguenti passaggi.

    1. Installa il componente helper ECP con gcloud CLI.

      
      gcloud components install enterprise-certificate-proxy
      
    2. 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 comando.

      macOS

      La configurazione ECP è archiviata in un file JSON 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 è archiviata in un file JSON 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"
        }
      }
      
  5. Attiva i certificati di cui è stato eseguito il provisioning per CBA ed 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, tra cui Terraform, imposta la variabile di ambiente.

      export GOOGLE_API_USE_CLIENT_CERTIFICATE=1
      

Utilizzo di sistemi operativi non completamente supportato

Se il tuo sistema operativo non è nell'elenco dei sistemi operativi supportati e vuoi utilizzare i certificati di cui è stato eseguito il provisioning di Verifica degli endpoint, puoi escludere gli ambienti dall'applicazione basata su certificati e proteggerli utilizzando altri tipi di applicazione. ad esempio usando un criterio relativo ai dispositivi di proprietà dell'azienda.

Tieni presente che l'applicazione basata su certificati offre una protezione più efficace rispetto ad altri tipi di applicazione, perché applica ogni richiesta proveniente da un dispositivo tramite l'handshake mTLS.

Di seguito è riportato un esempio di come escludere gli ambienti dall'applicazione basata su certificati e proteggerli utilizzando un altro tipo di applicazione forzata.

In questo esempio, un'organizzazione utilizza dispositivi macOS, Windows e ChromeOS. L'organizzazione vuole proteggere l'accesso proveniente dalla console Google Cloud.

  1. Crea un livello di accesso che applichi l'accesso basato su certificati a tutti i dispositivi, ad eccezione dei dispositivi ChromeOS in 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)
    
  2. Completa i passaggi delle procedure precedenti.

    1. Crea un criterio sensibile al contesto
    2. Configurare la verifica degli endpoint
    3. Configurare il browser Chrome degli utenti per l'utilizzo dei certificati di cui è stato eseguito il provisioning per la verifica degli endpoint