Configurar condições de certificados empresariais

Um princípio fundamental do Chrome Enterprise Premium é "O acesso aos serviços é concedido com base no que sabemos sobre si e o seu dispositivo". O nível de acesso concedido a um único utilizador ou a um único dispositivo é inferido dinamicamente através da consulta de várias origens de dados. O Chrome Enterprise Premium usa este nível de confiança como parte do respetivo processo de decisão.

O Gestor de acesso sensível ao contexto é o motor de políticas de confiança zero do Chrome Enterprise Premium. O Gestor de acesso sensível ao contexto permite aos administradores definir um controlo de acesso detalhado baseado em atributos para aplicações e Google Cloud recursos.

Use níveis de acesso para permitir o acesso a recursos com base em informações contextuais sobre o pedido. Ao usar níveis de acesso, pode começar a organizar níveis de confiança. Por exemplo, pode criar um nível de acesso denominado High_Level que permite pedidos de um pequeno grupo de indivíduos com privilégios elevados. Também pode identificar um grupo mais geral no qual confia, como um intervalo de IPs a partir do qual quer permitir pedidos. Nesse caso, pode criar um nível de acesso denominado Medium_Level para permitir esses pedidos.

Um dos principais requisitos para o acesso de confiança zero é permitir o acesso apenas quando o dispositivo é gerido ou pertence à empresa. Existem muitas formas de determinar se um dispositivo é propriedade da empresa. Uma delas é determinar se existe um certificado válido emitido pela empresa no dispositivo. A existência de um certificado empresarial num dispositivo pode ser usada para indicar que o dispositivo é propriedade da empresa.

Os certificados empresariais para o acesso sensível ao contexto são uma funcionalidade da solução de acesso baseada em certificados do Chrome Enterprise Premium. Esta funcionalidade tira partido dos certificados do dispositivo como um sinal sensível ao contexto alternativo para determinar se um dispositivo é um recurso pertencente à empresa. Esta funcionalidade é suportada no navegador Chrome 110 ou posterior.

Uma vez que um dispositivo pode ter mais do que um certificado, os certificados empresariais podem ser acedidos no nível de acesso personalizado através de macros .exist(e,p):

device.certificates.exists(cert, predicate)

No exemplo, cert é um identificador a usar em predicator que está associado ao certificado do dispositivo. A macro exist() combina os resultados dos predicados por elemento com o operador "ou" (||), o que significa que as macros devolvem true se, pelo menos, um certificado satisfizer a expressão predicate.

O certificado tem os seguintes atributos que podem ser verificados em conjunto. Tenha em atenção que as comparações de strings são sensíveis a maiúsculas e minúsculas.

Atributo Descrição Exemplo de expressão de predicado (em que cert é um identificador de macros)
is_valid Verdadeiro se o certificado for válido e não tiver expirado (booleano). cert.is_valid
cert_fingerprint Impressão digital do certificado (SHA256 sem preenchimento base64).

A impressão digital é o resumo SHA256 codificado em base64 sem preenchimento, no formato binário, do certificado codificado DER. Pode gerar a string a partir do certificado no formato PEM através do seguinte procedimento com o 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 Impressão digital do certificado da CA de raiz usado para assinar o certificado (SHA256 sem preenchimento base64).

A impressão digital é o resumo SHA256 codificado em base64 sem preenchimento, no formato binário, do certificado codificado DER. Pode gerar a string a partir do certificado no formato PEM através do seguinte procedimento com o 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 do emissor (nomes totalmente expandidos).

Para encontrar o nome do emissor, pode usar a seguinte abordagem:

Execute o seguinte comando no certificado:

$ 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

A string do emissor usada no nível de acesso é o inverso da saída e o / é substituído por uma vírgula. Exemplo:

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 do requerente do certificado (nomes totalmente expandidos). cert.subject == "CA_SUB"
serial_number Número de série do certificado (string). cert.serial_number = "123456789"
template_id ID do modelo de certificado de extensão X.509 para o certificado (string). cert.template_id = "1.3.6.1.4.1.311.21.8.15608621.11768144.5720724.16068415.6889630.81.2472537.7784047"

A tabela seguinte contém exemplos de políticas que pode definir:

Política de exemplo Expressão
O dispositivo tem um certificado válido assinado pelo certificado de raiz da empresa. device.certificates.exists(cert, cert.is_valid && cert.root_ca_fingerprint == "ROOT_CA_FINGERPRINT")
O dispositivo tem um certificado válido emitido pelo emissor 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")

Configurar certificados empresariais

Antes de configurar certificados empresariais, certifique-se de que configurou níveis de acesso personalizados. Para ver instruções, consulte o artigo Criar um nível de acesso personalizado.

Pode usar uma definição de nível de acesso personalizado do Gestor de acesso sensível ao contexto para definir as políticas adequadas. Os níveis de acesso personalizados usam expressões booleanas escritas num subconjunto do Idioma de expressão comum (IEC) para testar os atributos de um cliente que faz um pedido.

Carregar âncoras de confiança na consola do administrador

Para que o Chrome Enterprise Premium recolha e valide o certificado empresarial do dispositivo, tem de carregar as âncoras de confiança e todos os certificados intermédios usados para emitir o certificado do dispositivo. As âncoras de confiança aqui referem-se ao certificado da CA (autoridade de certificação) de raiz autoassinado e aos certificados intermédios e subordinados relevantes. Conclua os seguintes passos para carregar as âncoras de confiança:

  1. Aceda à consola do administrador e navegue para Dispositivos > Redes > Certificados.
  2. Selecione a unidade organizacional adequada.
  3. Selecione Adicionar certificado.
  4. Introduza o nome do certificado.
  5. Carregue o certificado.
  6. Ative a caixa de verificação Validação de pontos finais.
  7. Clique em Adicionar.
  8. Certifique-se de que os utilizadores pertencem à unidade organizacional para a qual os pontos de confiança foram carregados.

Configure uma política AutoSelectCertificateForUrls

Para que a validação de pontos finais procure o certificado do dispositivo e o recolha através do Chrome, tem de configurar a política do Chrome AutoSelectCertificateForURLs concluindo os seguintes passos:

  1. Certifique-se de que o navegador Chrome é gerido pelo Chrome Browser Cloud Management.

  2. Na consola do administrador, adicione a política AutoSelectCertificateForUrls:

    1. Aceda à consola do administrador e navegue para Dispositivos > Chrome > Definições > Definições de utilizadores e navegadores > Certificados de cliente.
    2. Selecione a unidade organizacional adequada.
    3. Adicione uma política AutoSelectCertificateForUrls, conforme demonstrado no exemplo seguinte:

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

      Substitua CERTIFICATE_ISSUER_NAME pelo nome comum da AC de raiz. Não modifique o valor de pattern.

Para validar a configuração da política, conclua os seguintes passos:

  1. Navegue para chrome://policy no navegador.
  2. Verifique o valor configurado para AutoSelectCertificateForUrls.
  3. Certifique-se de que o valor Aplica-se a da política está definido como Máquina. No sistema operativo Chrome, o valor é aplicado ao utilizador atual*.
  4. Certifique-se de que o Estado da política não tem um Conflito.

Resolução de problemas da configuração

Reveja os atributos do certificado na página de detalhes do dispositivo para garantir que os atributos do certificado estão listados corretamente.

Pode usar os registos da validação de pontos finais para ajudar a resolver problemas. Para transferir os registos da Validação de pontos finais, conclua os seguintes passos:

  1. Clique com o botão direito do rato na extensão Endpoint Verification e, de seguida, aceda a Opções.
  2. Selecione Nível de registo > Tudo > Transferir registos.
  3. Abra um registo de apoio ao cliente com o Cloud Customer Care e partilhe os registos para uma depuração mais detalhada.