Configuración de las condiciones del certificado empresarial

Un principio clave de Chrome Enterprise Premium es “El acceso a los servicios se otorga en función de lo que sabemos sobre ti y tu dispositivo”. El nivel de acceso otorgado a un solo usuario o dispositivo se infiere de forma dinámica cuando se consultan varias fuentes de datos. Chrome Enterprise Premium usa este nivel de confianza como parte del proceso de toma de decisiones.

Access Context Manager es el motor de políticas de confianza cero de Chrome Enterprise Premium. Access Context Manager permite a los administradores definir un control de acceso detallado basado en atributos para aplicaciones y recursos de Google Cloud.

Usa niveles de acceso para permitir el acceso a los recursos en función de la información contextual sobre la solicitud. Si usas los niveles de acceso, puedes comenzar a organizar los niveles de confianza. Por ejemplo, puedes crear un nivel de acceso llamado High_Level que permita solicitudes de un grupo pequeño de personas con un gran nivel de privilegios. También puedes identificar un grupo más general en el que confiar, como un rango de IP desde el que deseas permitir solicitudes. En ese caso, puedes crear un nivel de acceso llamado Medium_Level para permitir esas solicitudes.

Uno de los requisitos clave para el acceso de confianza cero es permitir el acceso solo cuando el dispositivo es administrado o propiedad de la empresa. Hay muchas formas de determinar si un dispositivo es propiedad de la empresa, y una es determinar si existe un certificado válido emitido por la empresa en el dispositivo. La existencia de un certificado empresarial en un dispositivo se puede usar para indicar que este es de propiedad de la empresa.

Los certificados empresariales para el acceso adaptado al contexto son una función de la solución general de acceso basado en certificados de Chrome Enterprise Premium. Esta función aprovecha los certificados del dispositivo como un indicador alternativo adaptado al contexto para determinar si un dispositivo es un activo de propiedad de la empresa. Esta función es compatible con el navegador Chrome 110 y versiones posteriores.

Como un dispositivo puede tener más de un certificado, se puede acceder a los certificados empresariales en el nivel de acceso personalizado mediante macros .exist(e,p):

device.certificates.exists(cert, predicate)

En el ejemplo, cert es un identificador simple que se usa en predicator y que se vincula al certificado del dispositivo. La macro exist() combina los resultados de predicado por elemento con el operador "or" (||), lo que significa que las macros muestran el valor "true" si al menos un certificado cumple con la expresión predicate.

El certificado tiene los siguientes atributos que se pueden verificar juntos. Ten en cuenta que las comparaciones de cadenas distinguen mayúsculas de minúsculas.

Atributo Descripción Ejemplo de expresión de predicado (donde cert es un identificador de macros)
is_valid Es verdadero si el certificado es válido y no está vencido (booleano). cert.is_valid
cert_fingerprint Huella digital del certificado (base64 sin rellenar SHA256).

La huella digital es el resumen SHA256 codificado en base64 sin rellenar, en formato binario, del certificado con codificación DER. Puedes generar la cadena a partir del certificado en formato PEM mediante el siguiente procedimiento 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 Huella digital del certificado de la AC raíz que se usa para firmar el certificado (SHA256 sin rellenar en base64).

La huella digital es el resumen SHA256 codificado en base64 sin rellenar, en formato binario, del certificado con codificación DER. Puedes generar la cadena a partir del certificado en formato PEM mediante el siguiente procedimiento 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 Nombre de la entidad emisora (nombres completamente expandidos).

Para encontrar el nombre de la entidad emisora, puedes usar el siguiente enfoque:

Ejecuta el siguiente comando en el 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

La cadena de entidad emisora que se usa en el nivel de acceso es lo contrario al resultado y se reemplaza la / por una coma. Ejemplo:

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 Es el nombre del asunto del certificado (nombres totalmente expandidos). cert.subject == "CA_SUB"
serial_number Número de serie del certificado (cadena). cert.serial_number = "123456789"
template_id ID de plantilla de la plantilla de certificado de extensión X.509 para el certificado (cadena). cert.template_id = "1.3.6.1.4.1.311.21.8.15608621.11768144.5720724.16068415.6889630.81.2472537.7784047"

En la siguiente tabla, se incluyen ejemplos de políticas que puedes establecer:

Ejemplo de una política Expresión
El dispositivo tiene un certificado válido firmado por el certificado raíz de la empresa. device.certificates.exists(cert, cert.is_valid && cert.root_ca_fingerprint == "ROOT_CA_FINGERPRINT")
El dispositivo tiene un certificado válido emitido por la entidad emisora 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")

Configuración de certificados empresariales

Antes de configurar los certificados empresariales, asegúrate de haber configurado niveles de acceso personalizados. Para obtener instrucciones, consulta Crea un nivel de acceso personalizado.

Puedes usar una definición de nivel de acceso personalizado de Access Context Manager para establecer las políticas adecuadas. Los niveles de acceso personalizados usan expresiones booleanas escritas en un subconjunto de Common Expression Language (CEL) para probar los atributos de un cliente que realiza una solicitud.

Cómo subir anclas de confianza en la Consola del administrador

Para que Chrome Enterprise Premium recopile y valide el certificado empresarial del dispositivo, debes subir las anclas de confianza que se usan para emitir el certificado del dispositivo. Los anclajes de confianza aquí hacen referencia al certificado de la AC raíz (autoridad certificadora) autofirmado y a los certificados intermedios y subordinados relevantes. Completa los siguientes pasos para subir las anclas de confianza:

  1. Ve a la Consola del administrador y navega a Dispositivos > Redes > Certificados.
  2. Selecciona la unidad organizativa adecuada.
  3. Selecciona Agregar certificado.
  4. Ingresa el nombre del certificado.
  5. Sube el certificado.
  6. Habilita la casilla de verificación Verificación de extremos.
  7. Haz clic en Agregar.
  8. Asegúrate de que los usuarios pertenezcan a la unidad organizativa para la que se suben las anclas de confianza.

Configura una política AutoSelectCertificateForUrls

Para que la Verificación de extremos busque el certificado del dispositivo y lo recopile a través de Chrome, debes configurar la política de Chrome AutoSelectCertificateForURLs con los siguientes pasos:

  1. Asegúrate de que la Administración en la nube para el navegador Chrome administre el navegador Chrome.

  2. En la Consola del administrador, agrega la política AutoSelectCertificateForUrls:

    1. Ve a la Consola del administrador y navega a Dispositivos > Chrome > Configuración > Configuración de usuarios y del navegador > Certificados de cliente.
    2. Selecciona la unidad organizativa adecuada.
    3. Agrega una política AutoSelectCertificateForUrls, como se muestra en el siguiente ejemplo:

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

      Reemplaza CERTIFICATE_ISSUER_NAME por el nombre común de la AC raíz. No modifiques el valor de pattern.

Para verificar la configuración de la política, completa los siguientes pasos:

  1. En el navegador, ingresa a chrome://policy.
  2. Verifica el valor configurado para AutoSelectCertificateForUrls.
  3. Asegúrate de que el valor de la política Se aplica a esté configurado en Máquina. En el sistema operativo Chrome, el valor se aplica al Usuario actual*.
  4. Asegúrate de que el Status de la política no tenga un Conflict.

Cómo solucionar problemas con la configuración

Revisa los atributos del certificado en la página de detalles del dispositivo para asegurarte de que los atributos del certificado se muestren de forma correcta.

Puedes usar los registros de Verificación de extremos para que te ayuden a solucionar cualquier problema. Para descargar los registros de Verificación de extremos, completa los siguientes pasos:

  1. Haz clic con el botón derecho en la extensión de Verificación de extremos y, luego, ve a Opciones.
  2. Selecciona Nivel de registro > Todos > Descargar registros.
  3. Abre un caso de asistencia con Atención al cliente de Cloud y comparte los registros para realizar una depuración adicional.