De nombreuses tâches d'agent impliquent l'exécution de code non fiable ou l'interaction avec des environnements externes d'une manière qui pourrait présenter des risques pour la sécurité. Gemini Enterprise Agent Platform fournit des bac à sable isolés pour gérer ces charges de travail de manière sécurisée.
Les bac à sable fournissent des environnements de calcul sécurisés et isolés qui sont générés pour effectuer des tâches spécifiques au nom d'un agent. En exécutant ces opérations dans un bac à sable, vous pouvez protéger votre infrastructure et vos données contre les actions potentiellement malveillantes ou erronées effectuées par l'agent. Les bac à sable atténuent ces risques en :
- Isolation : chaque bac à sable est isolé des autres bac à sable et du système hôte. Les actions effectuées par un agent dans un bac à sable n'affectent pas les autres agents ni les utilisateurs qui partagent les mêmes ressources d'exécution.
- Sécurité : les opérations effectuées dans le bac à sable sont limitées, ce qui empêche tout accès non autorisé à vos ressources. Tous les environnements de bac à sable utilisent la mise en bac à sable sécurisée des conteneurs, ce qui offre une limite de sécurité renforcée. Le code malveillant ne peut pas accéder aux données ni aux identifiants sensibles dans l'environnement d'exécution.
- Sécurité : si un agent exécute une commande nuisible ou une boucle infinie, l' impact est limité au bac à sable. Par exemple, un code mal écrit ou malveillant peut consommer toute la mémoire ou tous les processeurs disponibles.
Comparaison entre un bac à sable et un environnement d'exécution
L'environnement d'exécution de l'agent et un bac à sable diffèrent par leur objectif et leur utilisation :
- Environnement d'exécution de l'agent : il s'agit de l'environnement dans lequel s'exécutent la logique de base, la prise de décision et l'orchestration de l'agent. Il s'agit d'un environnement de confiance qui exécute votre code et gère le cycle de vie de l'agent.
- Bac à sable : il s'agit d'un environnement auxiliaire généré par l'agent ou la plate-forme pour exécuter des tâches spécifiques potentiellement dangereuses. Les bac à sable sont généralement éphémères ou basés sur une session, et ne conservent l'état que pendant la durée d'une tâche ou d'une session utilisateur. Par exemple, si un agent doit calculer une formule complexe en générant et en exécutant un script Python, il doit exécuter ce script dans un bac à sable, et non dans son propre environnement d'exécution.
Fonctionnalités
Les bac à sable offrent plusieurs fonctionnalités, telles que des bac à sable prédéfinis, des conteneurs personnalisés, des contrôles de sécurité d'entreprise et la gestion du cycle de vie :
- Exécution de code: permet à l'agent de générer et d'exécuter du code dans un environnement sécurisé. Cette fonctionnalité est utile pour les calculs mathématiques complexes, l'analyse de données et d'autres tâches nécessitant des calculs.
- Utilisation de l'ordinateur : permet à l'agent d'interagir avec un navigateur Web pour effectuer des tâches telles que remplir des formulaires, effectuer des recherches sur le Web ou parcourir des workflows d'interface utilisateur complexes.
- Conteneurs personnalisés : vous pouvez utiliser votre propre conteneur pour personnaliser l'environnement d'exécution avec des bibliothèques, des outils ou des configurations spécifiques.
- VPC Service Controls: Configurez des périmètres de sécurité pour protéger les données sensibles et empêcher toute sortie non autorisée des environnements de bac à sable.
- Clés de chiffrement gérées par le client (CMEK): protégez les données au repos dans le bac à sable à l'aide de clés de chiffrement gérées dans Cloud Key Management Service (Cloud KMS).