Attivare l'accesso basato su certificato 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. Il CBA di accesso sensibile al contesto 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 Google Cloud progetto. Se devi creare livelli di accesso, consulta Creare livelli di accesso per l'accesso basato su certificati.

Assicurati di applicare il CBA alle tue Google Cloud risorse utilizzando uno dei seguenti metodi:

Quando applichi il CBA alle tue Google Cloud risorse, per accedervi un utente autorizzato deve presentare anche un certificato del dispositivo valido.Google Cloud

Carica i trust anchor

Per consentire ad 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:

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

  2. Seleziona Aggiungi certificato e inserisci un nome per il certificato radice.

  3. Fai clic su Carica per caricare il certificato.

  4. Seleziona Attiva 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 dispositivi aziendali. Se la tua azienda non dispone di un certificato CA e dei certificati client corrispondenti, puoi crearli tramite il Google Cloud servizio Certificate Authority. 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 Verifica degli endpoint per installare l'estensione Verifica degli endpoint per Chrome per tutti gli utenti della tua organizzazione. Questa estensione sincronizza i metadati dei certificati con il backend di Google Cloud.

Dopo aver configurato l'estensione del browser, configura la policy di Chrome AutoSelectCertificateForURLs per consentire a Verifica degli endpoint di cercare il certificato del dispositivo e raccoglierlo tramite Chrome.

  1. Assicurati che Chrome Browser Cloud Management gestisca il browser Chrome degli utenti.

  2. Nella Console di amministrazione, aggiungi la policy AutoSelectCertificateForUrls:

    1. Vai a Dispositivi > Chrome > Impostazioni > Impostazioni utente e browser > Certificati client.

    2. Seleziona l'unità organizzativa appropriata.

    3. 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.

Verifica la configurazione della policy (facoltativo)

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

  2. Verifica che AutoSelectCertificateForUrls sia elencato in Policy di Chrome.

  3. Verifica che il valore di Si applica a sia Computer. Su ChromeOS, il valore di Si applica a è Utente corrente.

  4. Assicurati che lo Stato della policy non sia Conflitto. Se lo stato è in conflitto, consulta Comprendere la gestione delle policy di Chrome per informazioni.

Configura gli strumenti a riga di comando in modo che utilizzino il certificato aziendale

Se gli utenti della tua organizzazione devono accedere alle Google Cloud risorse dalla riga di comando, devono completare le seguenti procedure per attivare il CBA con il certificato aziendale negli strumenti a riga di comando.

Gli strumenti a riga di comando supportati includono:

  • Google Cloud CLI

  • Interfaccia a riga di comando Terraform (per installare e configurare i componenti di assistenza è necessaria la gcloud CLI).

Poiché i certificati dei dispositivi sono archiviati nei keystore nativi, Google Cloud CLI viene fornito 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 aver installato la libreria di runtime Visual Studio C++.

I sistemi operativi supportati e i rispettivi keystore integrati includono:

  • 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 l'ECP con Google Cloud CLI

  1. Installa Google Cloud CLI e attiva il 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 di assistenza 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 eseguita anche manualmente. Viene archiviata come file JSON nella seguente posizione sul dispositivo dell'utente:

  • Linux e macOS: ~/.config/gcloud/certificate_config.json

  • Windows: %APPDATA%\gcloud\certificate_config.json

Per altri esempi di configurazione e schema, consulta la documentazione ECP su GitHub.

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 il CBA per Google Cloud CLI, esegui il seguente comando per impostare la proprietà context_aware/use_client_certificate su true:

$ gcloud config set context_aware/use_client_certificate true

Per attivare il 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