Sandbox (sécurité informatique)

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher
Page d'aide sur l'homonymie Pour les articles homonymes, voir Sandbox.

Dans le domaine de la sécurité des systèmes informatiques, un sandbox (anglicisme signifiant « bac à sable ») est un mécanisme qui permet l'exécution de logiciel(s) avec moins de risques pour le système d'exploitation. Ces derniers sont souvent utilisés pour exécuter du code non testé ou de provenance douteuse.

Le terme sandbox est aussi utilisé dans un sens plus large pour faire référence à un environnement de test pour logiciels ou sites Web.

Dans le domaine du décisionnel, au-delà du test de logiciel, il peut aussi être question de tester des données de façon à en apprécier la qualité et les usages possibles, avant de les intégrer dans l’entrepôt de production et d’imposer diverses contraintes d’exploitation.

Caractéristiques[modifier | modifier le code]

Un sandbox offre généralement un ensemble de ressources à l'intérieur d'un environnement contrôlé afin d'exécuter le code (par exemple un espace de stockage temporaire sur le disque dur). L'accès aux réseaux, la possibilité d'inspecter le système hôte ou d'utiliser des périphériques sont généralement désactivés ou sévèrement restreints. Dans cette optique, un sandbox est donc un exemple particulier de la virtualisation.

Un sandbox du domaine du décisionnel, est un environnement spécifique d’apprentissage et d’innovation. Il est fréquent de multiplier ces espaces privatifs d’essais taillés sur mesure pour des utilisateurs finaux ou des informaticiens pour tester des données, des outils de chargement ou de restitution, des applications prototype ou des services bureau. Cependant d’un point de vue infrastructure, afin d’éviter les problèmes liés à la multiplication de datamarts, il est recommandé de déployer les sandbox sur la même plate-forme que l’entrepôt de données de production dans une zone spécialement isolée de la base de données.

Exemples de sandboxes[modifier | modifier le code]

  • Les machines virtuelles émulent un ordinateur hôte sur lequel un système d'exploitation complet peut tourner. Ce système d'exploitation est dans une sandbox dans le sens où il ne s'exécute pas de façon native sur la machine hôte, et ne peut l'affecter que par l'intermédiaire de l'émulateur ou des ressources partagées (tel que l'espace disque).
  • Les systèmes à capacités peuvent être vus comme des mécanismes fins de sandboxing, dans lesquels les programmes ont la possibilité d'effectuer des tâches spécifiques en fonction des privilèges qu'ils possèdent.
  • L'isolation est un type particulier de limitation d'utilisation des ressources appliqué aux programmes par le système d'exploitation en cas de problème tel qu'un bug ou une activité malveillante.
  • Les espaces d’essais décisionnels offrent la possibilité d’intégrer de nouvelles données en complément de celles gérées par le système décisionnel existant, de réaliser toutes les approches analytiques imaginables des plus simples aux plus complexes sur toutes les données des systèmes décisionnels de l’entreprise permanents ou temporaires et de faciliter la réalisation de prototypes d’applications décisionnelles permettant de tester certains choix de conception ou de moyens.
  • Sandboxed est une bibliothèque de programmation C++ basée sur le code source de Google Chrome.