Configurazione delle condizioni dei certificati aziendali

Un principio chiave di Chrome Enterprise Premium è "L'accesso ai servizi viene concesso in base a ciò che sappiamo su di te e sul tuo dispositivo". Il livello di accesso concesso a un singolo utente o a un singolo dispositivo viene dedotto dinamicamente interrogando più fonti di dati. Chrome Enterprise Premium utilizza questo livello di attendibilità nell'ambito del proprio processo decisionale.

Gestore contesto accesso è il motore dei criteri zero trust di Chrome Enterprise Premium. Gestore contesto accesso consente agli amministratori di definire un controllo dell'accesso granulare e basato sugli attributi per le applicazioni e le risorse Google Cloud .

Utilizza i livelli di accesso per consentire l'accesso alle risorse in base alle informazioni contestuali sulla richiesta. Utilizzando i livelli di accesso, puoi iniziare a organizzare i livelli di affidabilità. Ad esempio, potresti creare un livello di accesso denominato High_Level che consente le richieste di un piccolo gruppo di utenti con privilegi elevati. Puoi anche identificare un gruppo più generale attendibile, ad esempio un intervallo IP da cui vuoi consentire le richieste. In questo caso, puoi creare un livello di accesso chiamato Medium_Level per consentire queste richieste.

Uno dei requisiti chiave per l'accesso Zero Trust è consentire l'accesso solo quando il dispositivo è gestito o è di proprietà dell'azienda. Esistono molti modi per stabilire se un dispositivo è di proprietà dell'azienda. Uno di questi è verificare se sul dispositivo è presente un certificato valido emesso dall'azienda. L'esistenza di un certificato aziendale su un dispositivo può essere utilizzata per indicare che il dispositivo è di proprietà dell'azienda.

I certificati aziendali per l'accesso sensibile al contesto sono una funzionalità della soluzione di accesso basata su certificati di Chrome Enterprise Premium. Questa funzionalità sfrutta i certificati dei dispositivi come indicatore alternativo basato sul contesto per determinare se un dispositivo è una risorsa di proprietà dell'azienda. Questa funzionalità è supportata nel browser Chrome 110 o successivo.

Poiché un dispositivo può avere più di un certificato, è possibile accedere ai certificati aziendali nel livello di accesso personalizzato tramite le macro .exist(e,p):

device.certificates.exists(cert, predicate)

Nell'esempio, cert è un identificatore da utilizzare in predicator che si associa al certificato del dispositivo. La macro exist() combina i risultati del predicato per ciascun elemento con l'operatore "or" (||), il che significa che le macro restituiscono true se almeno un certificato soddisfa l'espressione predicate.

Il certificato ha i seguenti attributi che possono essere controllati insieme. Tieni presente che i confronti delle stringhe sono sensibili alle maiuscole.

Attributo Descrizione Esempio di espressione del predicato (dove cert è un identificatore di macro)
is_valid Vero se il certificato è valido e non è scaduto (booleano). cert.is_valid
cert_fingerprint Impronta del certificato (SHA256 base64 senza padding).

L'impronta è il digest SHA256 con codifica base64 senza padding, in formato binario, del certificato con codifica DER. Puoi generare la stringa dal certificato in formato PEM utilizzando la procedura seguente con OpenSSL:

$ openssl x509 -in cert.pem -out cert.der -outform DER
$ openssl dgst -sha256 -binary cert.der > digest.sha
$ openssl base64 -in digest.sha

cert.cert_fingerprint == origin.clientCertFingerprint()
root_ca_fingerprint Impronta del certificato CA radice utilizzato per firmare il certificato (SHA256 base64 senza padding).

L'impronta è il digest SHA256 con codifica base64 senza padding, in formato binario, del certificato con codifica DER. Puoi generare la stringa dal certificato in formato PEM utilizzando la procedura seguente con OpenSSL:

$ openssl x509 -in cert.pem -out cert.der -outform DER
$ openssl dgst -sha256 -binary cert.der > digest.sha
$ openssl base64 -in digest.sha

cert.root_ca_fingerprint == "the_fingerprint"
issuer Nome dell'emittente (nomi completamente espansi).

Per trovare il nome dell'emittente, puoi utilizzare il seguente approccio:

Esegui il seguente comando sul certificato:

$ openssl x509 -in ca_1.crt -issuer issuer= /C=IN/ST=UP/L=NCR/O=BCEDemo/OU=BCEDemo_1/CN=inter_1/emailAddress=test_inter1@beyondcorp.in

La stringa dell'autorità di certificazione usata nel livello di accesso è l'inverso dell'output e il carattere / viene sostituito da una virgola. Esempio:

EMAILADDRESS=test_inter1@beyondcorp.in, CN=inter_1, OU=BCEDemo_1, O=BCEDemo, L=NCR, ST=UP, C=IN

cert.issuer == "EMAILADDRESS=test_inter1@beyondcorp.in, CN=inter_1, OU=BCEDemo_1, O=BCEDemo, L=NCR, ST=UP, C=IN"
subject Nome del soggetto del certificato (nomi completamente espansi). cert.subject == "CA_SUB"
serial_number Numero di serie del certificato (stringa). cert.serial_number = "123456789"
template_id ID modello dell'estensione X.509 CertificateTemplate del certificato (stringa). cert.template_id = "1.3.6.1.4.1.311.21.8.15608621.11768144.5720724.16068415.6889630.81.2472537.7784047"

La tabella seguente contiene esempi di criteri che puoi impostare:

Norme di esempio Espressione
Il dispositivo ha un certificato valido firmato dal certificato radice dell'azienda. device.certificates.exists(cert, cert.is_valid && cert.root_ca_fingerprint == "ROOT_CA_FINGERPRINT")
Il dispositivo ha un certificato valido emesso dall'ente emittente CA_ABC. device.certificates.exists(cert, cert.is_valid && cert.issuer == "EMAILADDRESS=test_inter1@beyondcorp.in, CN=inter_1, OU=BCEDemo_1, O=BCEDemo, L=NCR, ST=UP, C=IN")

Configurazione dei certificati aziendali

Prima di configurare i certificati aziendali, assicurati di aver configurato i livelli di accesso personalizzati. Per le istruzioni, consulta la guida alla creazione di un livello di accesso personalizzato.

Puoi utilizzare una definizione di livello di accesso personalizzato di Gestore contesto accesso per impostare i criteri appropriati. I livelli di accesso personalizzati utilizzano espressioni booleane scritte in un sottoinsieme di Common Expression Language (CEL) per testare gli attributi di un client che effettua una richiesta.

Caricare le ancore di attendibilità nella Console di amministrazione

Affinché Chrome Enterprise Premium raccolga e convalidi il certificato aziendale del dispositivo, devi caricare le ancore di attendibilità e tutti i certificati intermedi utilizzati per emettere il certificato del dispositivo. Le ancore di attendibilità qui fanno riferimento al certificato dell'autorità di certificazione (CA) radice autofirmato e ai certificati intermedi e subordinati pertinenti. Completa i seguenti passaggi per caricare le ancore di attendibilità:

  1. Vai alla Console di amministrazione e vai a Dispositivi > Reti > Certificati.
  2. Seleziona l'unità organizzativa appropriata.
  3. Seleziona Aggiungi certificato.
  4. Inserisci il nome del certificato.
  5. Carica il certificato.
  6. Attiva la casella di controllo Verifica endpoint.
  7. Fai clic su Aggiungi.
  8. Assicurati che gli utenti appartengano all'unità organizzativa per cui vengono caricati gli ancoraggi di attendibilità.

Configurare un criterio AutoSelectCertificateForUrls

Affinché Endpoint Verification possa cercare il certificato del dispositivo e raccoglierlo tramite Chrome, devi configurare il criterio di Chrome AutoSelectCertificateForURLs completando i seguenti passaggi:

  1. Assicurati che il browser Chrome sia gestito da Chrome Browser Cloud Management.

  2. Nella Console di amministrazione, aggiungi il criterio AutoSelectCertificateForUrls:

    1. Vai alla Console di amministrazione e vai a Dispositivi > Chrome > Impostazioni > Impostazioni browser e utente > Certificati client.
    2. Seleziona l'unità organizzativa appropriata.
    3. Aggiungi un criterio AutoSelectCertificateForUrls, come mostrato nell'esempio seguente:

      {"pattern":"https://[*.]clients6.google.com","filter":{"ISSUER":{"CN":"CERTIFICATE_ISSUER_NAME"}}}
      

      Sostituisci CERTIFICATE_ISSUER_NAME con il nome comune della CA radice. Non modificare il valore di pattern.

Per verificare la configurazione del criterio, completa i seguenti passaggi:

  1. Vai a chrome://policy nel browser.
  2. Verifica il valore configurato per AutoSelectCertificateForUrls.
  3. Assicurati che il valore Si applica a del criterio sia impostato su Computer. Sul sistema operativo Chrome, il valore viene applicato a Utente corrente*.
  4. Assicurati che lo stato del criterio non sia Conflitto.

Risolvere i problemi di configurazione

Controlla gli attributi del certificato nella pagina dei dettagli del dispositivo per assicurarti che siano elencati correttamente.

Puoi utilizzare i log di verifica degli endpoint per risolvere eventuali problemi. Per scaricare i log di verifica degli endpoint, svolgi i seguenti passaggi:

  1. Fai clic con il tasto destro del mouse sull'estensione Endpoint Verification e vai a Opzioni.
  2. Seleziona Livello log > Tutti > Scarica log.
  3. Apri una richiesta di assistenza con l'Assistenza clienti Google Cloud e condividi i log per un ulteriore debugging.