Como configurar condições de certificados empresariais

Um princípio fundamental do Chrome Enterprise Premium é que o "acesso aos serviços é concedido com base no que sabemos de você e do seu dispositivo". O nível de acesso concedido a um único usuário ou a um único dispositivo é inferido dinamicamente por meio da interrogação de várias fontes de dados. O Chrome Enterprise Premium usa esse nível de confiança como parte do processo de decisão.

O Access Context Manager é o mecanismo de políticas de confiança zero do Chrome Enterprise Premium. O Access Context Manager permite que os administradores definam um controle de acesso detalhado e baseado em atributos para aplicativos e Google Cloud recursos.

Use os níveis de acesso para permitir o acesso a recursos com base em informações contextuais sobre a solicitação. Usando os níveis de acesso, é possível começar a organizar os níveis de confiança. Por exemplo, é possível criar um nível de acesso chamado High_Level que permita solicitações de um pequeno grupo de indivíduos com privilégios altos. Também é possível identificar um grupo mais geral para confiar, como um intervalo de IP de onde você quer permitir solicitações. Nesse caso, é possível criar um nível de acesso chamado Medium_Level para permitir essas solicitações.

Um dos principais requisitos para o acesso de confiança zero é permitir o acesso somente quando o dispositivo for gerenciado ou da empresa. Há muitas maneiras de determinar se um dispositivo é de propriedade da empresa. Uma delas é determinar se um certificado válido emitido pela empresa está no dispositivo. A existência de um certificado empresarial em um dispositivo pode ser usada para indicar que o dispositivo é de propriedade da empresa.

Os certificados corporativos para acesso com reconhecimento de contexto são um recurso da solução de acesso baseada em certificado do Chrome Enterprise Premium. Esse recurso usa certificados de dispositivo como um indicador alternativo baseado no contexto para determinar se um dispositivo é um recurso de propriedade corporativa. Esse recurso é compatível com o navegador Chrome 110 ou mais recente.

Como um dispositivo pode ter mais de um certificado, os certificados empresariais podem ser acessados no nível de acesso personalizado usando as macros .exist(e,p):

device.certificates.exists(cert, predicate)

No exemplo, cert é um identificador a ser usado em predicator, que é vinculado ao certificado do dispositivo. A macro exist() combina os resultados de predicado por elemento com o operador "or" (||). Isso significa que as macros retornam verdadeiro quando pelo menos um certificado atende à expressão predicate.

O certificado tem os seguintes atributos que podem ser verificados juntos. As comparações de string diferenciam maiúsculas de 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 no formato Base64 não preenchido).

A impressão digital é o hash SHA256 codificado em base64 não preenchido, no formato binário, do certificado codificado por DER. É possível gerar a string do certificado no formato PEM usando o 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 de AC raiz usado para assinar o certificado (SHA256 no formato Base64 não preenchido).

A impressão digital é o hash SHA256 codificado em base64 não preenchido, no formato binário, do certificado codificado por DER. É possível gerar a string do certificado no formato PEM usando o 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, use esta abordagem:

Execute o comando a seguir 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 caractere / é 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 assunto 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 da extensão X.509 CertificateTemplate do certificado (string). cert.template_id = "1.3.6.1.4.1.311.21.8.15608621.11768144.5720724.16068415.6889630.81.2472537.7784047"

A tabela a seguir contém exemplos de políticas que podem ser definidas:

Exemplo de política Expressão
O dispositivo tem um certificado válido assinado pelo certificado 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")

Como configurar certificados empresariais

Antes de configurar certificados corporativos, verifique se você configurou níveis de acesso personalizados. Para mais instruções, consulte Como criar um nível de acesso personalizado.

Use uma definição de nível de acesso personalizado do Access Context Manager para definir as políticas apropriadas. Os níveis de acesso personalizados usam expressões booleanas escritas em um subconjunto de Common Expression Language (CEL) para testar os atributos de um cliente que faz uma solicitação.

Como fazer upload de pontos de confiança no Admin Console

Para que o Chrome Enterprise Premium colete e valide o certificado do dispositivo empresarial, faça upload das âncoras de confiança e de todos os certificados intermediários usados para emitir o certificado do dispositivo. As âncoras de confiança aqui se referem ao certificado raiz de AC (autoridade de certificação) autoassinado e aos certificados intermediários e subordinados relevantes. Siga estas etapas para fazer o upload das âncoras de confiança:

  1. Acesse o Admin Console e navegue até Dispositivos > Redes > Certificados.
  2. Selecione a unidade organizacional adequada.
  3. Selecione Adicionar certificado.
  4. Digite o nome do certificado.
  5. Faça upload do certificado.
  6. Marque a caixa de seleção Verificação de endpoints.
  7. Clique em Adicionar.
  8. Verifique se os usuários pertencem à unidade organizacional para a qual as âncoras de confiança foram enviadas.

Configurar uma política AutoSelectCertificateForUrls

Para que a Verificação de endpoint pesquise e colete o certificado do dispositivo pelo Chrome, configure a política AutoSelectCertificateForURLs do Chrome seguindo estas etapas:

  1. Verifique se o navegador Chrome é gerenciado pelo Gerenciamento de nuvem do navegador Chrome.

  2. No Admin Console, adicione a política AutoSelectCertificateForUrls:

    1. Acesse o Admin Console e navegue até Dispositivos > Chrome > Configurações > Configurações do navegador e usuário > Certificados do cliente.
    2. Selecione a unidade organizacional adequada.
    3. Adicione uma política AutoSelectCertificateForUrls, conforme demonstrado no exemplo a seguir:

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

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

Para verificar a configuração da política, siga estas etapas:

  1. Acesse chrome://policy no navegador.
  2. Verifique o valor configurado para AutoSelectCertificateForUrls.
  3. Verifique se o valor Aplica-se a da política está definido como Máquina. No sistema operacional Chrome, o valor é aplicado ao Usuário atual*.
  4. Verifique se o Status da política não tem um Conflito.

Solução de problemas de configuração

Revise os atributos do certificado na página de detalhes do dispositivo para garantir que os atributos do certificado estejam listados corretamente.

Use os registros da Verificação de endpoints para resolver problemas. Para fazer o download dos registros de verificação de endpoint, siga estas etapas:

  1. Clique com o botão direito do mouse na extensão Verificação de endpoints e acesse Opções.
  2. Selecione Nível de registro > Todos > Fazer o download dos registros.
  3. Abra um caso de suporte com o Cloud Customer Care e compartilhe os registros para mais depuração.