Attivare l'accesso basato su certificati con i certificati aziendali

In questa pagina viene descritto come attivare l'accesso basato su certificati (CBA) con i certificati aziendali.

Se non hai un'infrastruttura a chiave pubblica (PKI), puoi utilizzare i certificati di cui è stato eseguito il provisioning da 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 archiviate in un archivio chiavi sicuro sul dispositivo per determinare se quest'ultimo è autorizzato. Per attivare questa funzionalità, completa la procedura seguente.

Prima di iniziare

Assicurati di aver creato livelli di accesso CBA per il tuo progetto Google Cloud. Se hai bisogno di creare livelli di accesso, consulta Creare livelli di accesso per l'accesso basato su certificati.

Assicurati di applicare l'opzione CBA alle risorse Google Cloud utilizzando uno dei seguenti metodi:

Quando applichi CBA alle risorse Google Cloud, l'accesso alle risorse Google Cloud richiede che un utente autorizzato presenti anche un certificato valido per il dispositivo.

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 i trust anchor, completa i seguenti passaggi:

  1. Nella Console di amministrazione Google, vai a Dispositivi > Reti > Certificati, quindi seleziona l'unità organizzativa per la quale caricare i trust anchor. Assicurati che l'unità organizzativa selezionata contenga gli utenti a cui vuoi concedere l'accesso.

  2. Seleziona Aggiungi certificato, quindi inserisci un nome per il certificato radice.

  3. Fai clic su Carica per caricare il certificato.

  4. Seleziona Abilita la verifica degli endpoint e fai clic su Aggiungi.

Il certificato da caricare deve essere il certificato CA, ovvero l'emittente dei certificati client installati sui tuoi dispositivi aziendali. Se la tua azienda non dispone ancora di un certificato CA e dei certificati client corrispondenti, puoi crearli tramite Certificate Authority Service di Google Cloud. La procedura per installare i certificati client negli archivi chiavi nativi è diversa a seconda del sistema operativo e non rientra nell'ambito di questo documento.

Configura il browser Chrome degli utenti per l'utilizzo del tuo certificato aziendale

Segui le istruzioni in Configurare la verifica degli endpoint per installare l'estensione Verifica degli endpoint per Chrome per tutti gli utenti dell'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 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, 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":<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 Google Cloud protette con il browser Chrome all'indirizzo console-secure.cloud.google.com.

(Facoltativo) Verifica la configurazione dei criteri

  1. Nel browser Chrome, inserisci chrome://policy.

  2. Verifica che AutoSelectCertificateForUrls sia nell'elenco Criteri di Chrome.

  3. Verifica che il valore di Si applica a sia Macchina. Nel sistema operativo Chrome, il valore di Si applica a è Utente corrente.

  4. Assicurati che lo stato del criterio non abbia un conflitto. Se lo stato esiste un conflitto, consulta Comprendere la gestione dei criteri di Chrome per informazioni.

Configura 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 abilitare CBA con il certificato aziendale negli strumenti a riga di comando.

Sono supportati i seguenti strumenti a riga di comando:

  • Google Cloud CLI

  • Interfaccia a riga di comando Terraform (l'gcloud CLI è ancora necessaria per installare e configurare i componenti helper.)

Poiché i certificati dei dispositivi sono archiviati in archivi chiavi nativi, Google Cloud CLI è integrato in 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 la libreria di runtime di Visual Studio C++ installata.

Sono supportati i seguenti sistemi operativi e i rispettivi archivi chiavi 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 negli archivi chiavi.

Installa e configura ECP con Google Cloud CLI

  1. Installa Google Cloud CLI e abilita CBA. Installa con l'opzione bundled python attivata.

  2. Per macOS e Linux, esegui lo script install.sh dopo averlo scaricato:

    $ ./google-cloud-sdk/install.sh
    
  3. Installa il componente helper ECP con Google Cloud CLI:

    gcloud components install enterprise-certificate-proxy
    
  4. 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 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 ECG su GitHub per ulteriori 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 di Google Cloud utilizzando gli strumenti a riga di comando abilitando il flag CBA.

Per abilitare CBA per Google Cloud CLI, imposta la proprietà context_aware/use_client_certificate su true.

Per abilitare CBA per tutti gli altri strumenti a riga di comando, incluso Terraform, imposta la variabile di ambiente GOOGLE_API_USE_CLIENT_CERTIFICATE su true.

Passaggi successivi