Muchas tareas de los agentes implican ejecutar código no confiable, ejecutar comandos, usar un navegador web o interactuar con entornos externos de formas que podrían generar riesgos de seguridad. Gemini Enterprise Agent Platform proporciona zonas de pruebas aisladas para controlar estas cargas de trabajo de forma segura.
Las zonas de pruebas proporcionan entornos de ejecución seguros y aislados que se generan para realizar tareas específicas en nombre de un agente. Si ejecutas estas operaciones en un entorno de pruebas, puedes proteger tu infraestructura y tus datos de acciones potencialmente maliciosas o erróneas que realice el agente. Los entornos de pruebas aíslan estos riesgos de las siguientes maneras:
- Aislamiento: Cada zona de pruebas está aislada de otras zonas de pruebas y del sistema host. Las acciones que realiza un agente en un entorno de pruebas no afectan a otros agentes ni a los usuarios que comparten los mismos recursos de tiempo de ejecución.
- Seguridad: Las operaciones dentro de la zona de pruebas están restringidas, lo que impide el acceso no autorizado a tus recursos. Todos los entornos de zona de pruebas usan la zona de pruebas de contenedores segura, lo que proporciona un límite de seguridad sólido. El código malicioso no puede acceder a datos sensibles ni credenciales durante el tiempo de ejecución.
- Seguridad: Si un agente ejecuta un comando dañino o un bucle infinito, el impacto se limita al entorno de pruebas. Por ejemplo, el código malicioso o mal escrito podría consumir toda la CPU o la memoria disponibles.
Comparación entre la zona de pruebas y el entorno de ejecución
El tiempo de ejecución del agente y el sandbox difieren en su propósito y uso:
- Agent Runtime: Es el entorno en el que se ejecutan la lógica principal, la toma de decisiones y la organización del agente. Es un entorno de confianza que ejecuta tu código y administra el ciclo de vida del agente.
- Zona de pruebas: Es un entorno auxiliar que genera el agente o la plataforma para ejecutar tareas específicas que podrían ser inseguras. Los entornos de pruebas pueden ser de corta duración, basados en sesiones o con estado durante varios días.
Por ejemplo, si un agente necesita calcular una fórmula compleja generando y ejecutando una secuencia de comandos personalizada de Python, debe ejecutar esa secuencia de comandos en un entorno de pruebas de ejecución de código, no en su propio entorno de ejecución. Además, si el agente usa una habilidad y una secuencia de comandos de shell, debe ejecutarlos en un entorno aprovisionado específicamente para esa sesión, con el acceso del usuario final.
Velocidades de aprovisionamiento de TTL y zona de pruebas
- TTL: Los TTL de la zona de pruebas varían entre 7 días para una imagen de contenedor personalizada y 14 días para una zona de pruebas de ejecución de código. Esto te permite reanudar el estado en un entorno de zona de pruebas varios días después para tareas a largo plazo y entornos de shell reanudables.
- Aprovisionamiento: La creación de un nuevo entorno de pruebas tarda hasta 2 minutos en aprovisionar recursos desde un inicio en frío, pero, después de que se aprovisionan, los entornos de pruebas suelen iniciarse en segundos. Puedes ver la arquitectura subyacente en los siguientes proyectos de código abierto: AX y Substrate.
Funciones
Las zonas de pruebas ofrecen varias funciones, como zonas de pruebas predefinidas, contenedores personalizados, controles de seguridad empresariales y administración del ciclo de vida:
- Ejecución de código: Permite que el agente genere y ejecute código en un entorno seguro. Esto es útil para cálculos matemáticos complejos, análisis de datos y otras tareas que requieren computación.
- Uso de la computadora: Permite que el agente interactúe con un navegador web para realizar tareas como completar formularios, buscar en la Web o navegar por flujos de trabajo complejos de la IU.
- Contenedores personalizados: Puedes "traer tu propio contenedor" para personalizar el entorno de ejecución con bibliotecas, herramientas o configuraciones específicas. Usa este parámetro para proporcionarle a tu agente un entorno de shell que contenga los comandos y las herramientas de tu imagen personalizada.
- Controles del servicio de VPC: Configura perímetros de seguridad para proteger los datos sensibles y evitar la salida no autorizada de los entornos de zona de pruebas.
- Claves de encriptación administradas por el cliente (CMEK): Protege los datos en reposo de la zona de pruebas con claves de encriptación administradas en Cloud Key Management Service (Cloud KMS).