El propósito de la función de retención selectiva forense es proporcionar datos precisos y no modificados por motivos legales, de seguridad y operativos. El caso práctico admitido actualmente permite la captura en tiempo real de datos asociados con el escritorio de un usuario de forma periódica cuando un usuario se pone en retención selectiva por motivos legales, de respuesta ante incidentes u operativos. Al poner a un usuario en retención selectiva forense, los escritorios del usuario se mantienen temporalmente persistentes, por lo que se impide actualizar o eliminar ("volver a crear imágenes") del escritorio, y se proporciona al administrador la capacidad de acceder al escritorio del usuario con fines de investigación y un impacto mínimo en la experiencia del usuario.

Cómo funciona la retención selectiva forense

  • Control de acceso basado en funciones

    La función forense se controla mediante el privilegio global FORENSICS. El superadministrador puede asignar este privilegio a otro administrador, que se conoce como administrador forense, pero este privilegio no está habilitado para el superadministrador de forma predeterminada. Para obtener más información, consulte "Privilegios globales" en el documento Administración de Horizon 8.

  • Almacén de datos de archivado

    El almacén de datos de archivado es un conjunto NFS o VMFS montado globalmente en LDAP. Horizon 8 lee esta configuración de LDAP para determinar dónde colocar los datos archivados. De forma predeterminada, la opción es utilizar el mismo almacén de datos en el que se encuentra el grupo.

  • Seleccionar flujo de trabajo retenido
    • Poner a los usuarios en espera
      Una retención solo se puede aplicar en un nivel de usuario de AD individual. Cuando el administrador forense retiene a usuario mediante la API, ocurre lo siguiente:
      • Si el usuario ya utiliza una máquina virtual, la retención se aplica a la máquina virtual en la que está conectado actualmente y a cualquier otra máquina virtual asignada al usuario.
      • Cuando ese usuario inicia sesión en una máquina virtual, Horizon 8 cambia el estado de la máquina virtual de clon instantáneo de "sin estado" a "con estado", pero deja la máquina virtual con estado en su grupo original.
      • El usuario retenido continúa iniciando sesión en la misma máquina virtual para ver todos los cambios anteriores que realizó en el escritorio. Horizon 8 no altera el contenido de la máquina virtual de ninguna forma.
      • Un indicador de estado en la consola administrativa muestra que la máquina virtual está retenida.
      • La máquina virtual se etiqueta en vCenter para que los administradores de vCenter no puedan modificarla.
    • Durante el período de retención
      Después de poner a un usuario en retención, el equipo forense puede acceder al escritorio con estado para investigar y capturar los datos en tiempo real sobre la marcha. Para esta captura de datos, el administrador forense tiene las siguientes opciones.
      • Usar la API de Archive. La API de Archive puede funcionar en varias máquinas virtuales y varios usuarios. Solo puede archivar una máquina virtual individual cuando el usuario no ha iniciado sesión. Si el usuario inició sesión, el comando de archivado debe retrasarse hasta que el usuario cierre sesión.
        La operación de archivado es la siguiente forma:
        • La máquina virtual está apagada.
        • Todos los discos están consolidados.
        • Todas las instantáneas están consolidadas.
        • El archivo VMDK se copia en la ubicación de archivo seleccionada.
        • La máquina virtual se vuelve a sincronizar con la imagen de destino.
      • Usar sus propios scripts o herramientas de terceros. En este caso, puede elegir si desea archivar solo la memoria del hipervisor, solo los VMDK de las máquinas virtuales o la memoria del hipervisor y los VMDK.

        La variable de entorno isHeldUser indica si el usuario que se conecta a la sesión es un usuario retenido. Según el valor de esta variable, puede activar scripts de recopilación de datos cuando un usuario retenido inicia sesión en un escritorio. Se puede activar un script cuando el servicio de host de script se ejecuta en la máquina virtual de Connection Server. Para obtener más información, consulte Activar el servicio de VMware Horizon View Script Host en el documento Funciones de escritorios remotos y GPO de Horizon.

      Aspectos que se deben tener en cuenta durante el período de retención:
      • Una máquina virtual en espera no se puede actualizar, recuperar, eliminar ni poner en modo de mantenimiento. Esto se aplica únicamente a la máquina virtual retenida, no a ninguna otra máquina virtual del mismo grupo.
      • No se puede eliminar un grupo que contiene las máquinas virtuales retenidas.
      • Cuando se establece la capacidad de reducción automática del grupo, Horizon 8 prioriza la máquina virtual en espera para que no se pierda.
      • Cuando el grupo de clones instantáneos necesita someterse a una actualización de revisión o actualización de grupo, hay dos opciones posibles:
        • Cuando un grupo que contiene máquinas virtuales en espera debe actualizarse y el almacén de datos de archivos no está configurado, la inserción de imagen ignora las máquinas virtuales con estado. Esto mantiene las máquinas virtuales en espera con fines forenses, y el usuario sigue siendo redirigido a la máquina virtual persistente cuando inicia sesión. A continuación, es necesario aplicar revisiones a estas máquinas virtuales con herramientas independientes, como máquinas virtuales persistentes.
        • Cuando se debe actualizar un grupo que contiene máquinas virtuales en espera y se establece el almacén de datos de archivos, Horizon 8 primero realiza una inserción de imagen en todas las demás máquinas virtuales del grupo y, a continuación, archiva las máquinas virtuales retenidas. Después de archivar las máquinas virtuales retenidas, Horizon 8 realiza un proceso de inserción de imagen normal en ellas. La próxima vez que el usuario retenido vuelva a iniciar sesión, obtendrá una máquina virtual original, que se convertirá en una máquina virtual con estado, y el proceso se repetirá. Tenga en cuenta que cada vez que se realiza una operación de revisión, se requiere almacenamiento adicional para copiar y archivar la máquina virtual con estado.
    • Eliminar usuarios retenidos

      Cuando el administrador forense libera a un usuario mediante la API, ocurre lo siguiente.

      • Horizon 8 vuelve a convertir la máquina virtual en una máquina virtual sin estado.
      • La próxima vez que el usuario cierre de sesión, la máquina virtual se eliminará y se volverá a crear a partir de la imagen maestra, lo que la revertirá a un estado original.
  • Operaciones forenses en la base de datos de eventos

    Todas las operaciones, incluida la concesión del privilegio FORENSICS y la retención o liberación de usuarios, se capturan en la base de datos de eventos. Esto se puede utilizar para notificar cualquier script que deba ejecutarse.

Uso de las API para realizar investigación forense y seleccionar funciones de retención

Puede usar las API de Horizon para realizar tareas forenses y seleccionar la retención como se describe a continuación. Para cada API, hay un vínculo a su documentación en el sitio web de VMware {code}.

  • Crear una función de administrador forense y asignar un usuario
    1. Cree la función de administrador forense personalizada con la siguiente API:
      /config/v1/roles

      Puede consultar la documentación de esta API aquí.

    2. Asigne la función de administrador forense personalizada siguiendo las instrucciones en la sección "Crear un administrador en Horizon Console" de la guía de Administración de Horizon 8.
  • Designe un almacén de datos para archivar
    Para designar un almacén de datos para archivar memoria y discos virtuales, utilice la siguiente API:
    /config/v1/virtual-centers/{id}/action/mark-datastores-for-archival

    Puede consultar la documentación de esta API aquí.

  • Poner al usuario en espera
    Para poner retener a un usuario, utilice la siguiente API:
    /external/v1/ad-users-or-groups/action/hold
    La API devuelve el identificador de escritorio, el identificador de grupo y el estado de la máquina de todos los escritorios asignados al usuario retenido. Puede utilizar esta información de alerta para activar la recopilación de datos generada por script. Puede consultar la documentación de esta API aquí.

    En vCenter, se aplica la etiqueta ForensicHold a todas las máquinas virtuales que utilizan los usuarios retenidos.

  • Archivar el disco y la memoria virtual de una máquina virtual
    Para archivar el disco virtual y la memoria de una máquina virtual, utilice la siguiente API:
    /inventory/v1/machines/action/archive

    Puede consultar la documentación de esta API aquí.

    • El archivado se produce cuando el usuario cierra sesión en la máquina virtual en espera.
    • Cuando se archivan las máquinas virtuales, estas se muestran en la carpeta Archive del almacén de datos de archivado (como se especifica anteriormente en la API) de vCenter.
    • Si una máquina virtual tiene más de un disco, solo se archivará el disco principal. El archivo de varios discos no es compatible con esta versión.
  • Liberar usuario de retención
    Para liberar a un usuario retenido, utilice la siguiente API:
    /external/v1/ad-users-or-groups/action/release-hold

    La API devuelve el identificador de escritorio, el identificador de grupo y el estado de la máquina de todos los escritorios asignados al usuario retenido. Puede utilizar esta información de alerta para activar la recopilación de datos generada por script. Puede consultar la documentación de esta API aquí.

  • Lista de usuarios en espera
    Para ver una lista de los usuarios retenidos, utilice la siguiente API:
    /external/v1/ad-users-or-groups/held-users-or-groups

    Puede consultar la documentación de esta API aquí.

  • Enumerar máquinas en espera
    Para generar una lista de máquinas actualmente en espera, utilice la siguiente API:
    /inventory/v3/machines

    Puede consultar la documentación de esta API aquí.

    Nota: Esta API devuelve todas las máquinas. En la respuesta, las máquinas virtuales en espera tienen el valor "held_machine": true.