Configura condiciones de 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 a un solo dispositivo se infiere de forma dinámica mediante la búsqueda de varias fuentes de datos. Chrome Enterprise Premium usa este nivel de confianza como parte de su proceso de decisión.

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 según la información contextual de la solicitud. Mediante los niveles de acceso, puedes comenzar a organizar 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 muchos privilegios. También puedes identificar un grupo más general para 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 la empresa administra el dispositivo o es su propietaria. Existen muchas formas de determinar si un dispositivo es de propiedad de una empresa. Una de ellas es determinar si existe un certificado válido emitido por la empresa en el dispositivo. La existencia de un certificado empresarial en un dispositivo puede usarse para indicar que el dispositivo es 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 recurso de propiedad de la empresa. Esta función es compatible con la versión 110 o posterior del navegador Chrome.

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

device.certificates.exists(cert, predicate)

En el ejemplo, cert es un identificador que se usará en predicator, que se vincula al certificado del dispositivo. La macro exist() combina los resultados del predicado por elemento con el operador “o” (||), lo que significa que las macros muestran verdadero si al menos un certificado satisface la expresión predicate.

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

Atributo Descripción Ejemplo de expresión de predicado (en la que cert es un identificador de macros)
is_valid Es verdadero si el certificado es válido y no venció (booleano). cert.is_valid
cert_fingerprint Huella digital del certificado (SHA256 sin padding en base64).

La huella digital es el resumen SHA256 codificado en base64 sin padding, en formato binario, del certificado codificado en DER. Puedes generar la cadena del certificado en formato PEM con 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 usó para firmar el certificado (SHA256 sin padding en base64).

La huella digital es el resumen SHA256 codificado en base64 sin padding, en formato binario, del certificado codificado en DER. Puedes generar la cadena del certificado en formato PEM con 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 del emisor, 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 del emisor que se usa en el nivel de acceso es la inversa de la salida y la barra se reemplaza 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 completamente expandidos). cert.subject == "CA_SUB"
serial_number Es el número de serie del certificado (cadena). cert.serial_number = "123456789"
template_id Es el ID 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 el emisor 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")

Configura certificados empresariales

Antes de configurar certificados empresariales, asegúrate de haber configurado niveles de acceso personalizados. Para obtener instrucciones, consulta Cómo crear 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 las marcas de confianza en la Consola del administrador

Para que Chrome Enterprise Premium recopile y valide el certificado de la empresa del dispositivo, debes subir los vínculos de confianza y los certificados intermedios que se usan para emitir el certificado del dispositivo. Los anclajes de confianza aquí se refieren al certificado de AC (autoridad certificadora) raíz autofirmado y a los certificados intermedios y subordinados relevantes. Completa los siguientes pasos para subir los vínculos 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 Endpoint Verification.
  7. Haz clic en Agregar.
  8. Asegúrate de que los usuarios pertenezcan a la unidad organizativa para la que se suben los vínculos de confianza.

Configura una política AutoSelectCertificateForUrls

Para que Endpoint Verification busque el certificado del dispositivo y lo recopile a través de Chrome, debes configurar la política de Chrome AutoSelectCertificateForURLs. Para ello, sigue estos 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 del usuario 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. Navega a chrome://policy en el navegador.
  2. Verifica el valor configurado para AutoSelectCertificateForUrls.
  3. Asegúrate de que el valor de Aplica a de la política esté configurado como Máquina. En el sistema operativo Chrome, el valor se aplica a Usuario actual*.
  4. Asegúrate de que el Estado de la política no tenga un Conflicto.

Soluciona problemas de configuración

Revisa los atributos del certificado en la página de detalles del dispositivo para asegurarte de que aparezcan correctamente.

Puedes usar los registros de Endpoint Verification para 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 Endpoint Verification y, luego, ve a Opciones.
  2. Selecciona Nivel de registro > Todo > Descargar registros.
  3. Abre un caso de asistencia con Atención al cliente de Cloud y comparte los registros para continuar con la depuración.