2009-02-19 9 views
6

[Cette question est similaire à this one, mais je suis aussi intéressé par la possibilité d'un bac à sable.]Langage de script dans un bac à sable pour C# /. NET application

J'envisage l'intégration d'un langage de script dans mon C# /.NET application, puis en exposant une partie de l'API de mon application aux scripts. Il semble y avoir plusieurs bonnes options pour cela (Lua, Boo, IronPython, etc.), mais y a-t-il des options simples pour restreindre l'utilisation des fonctions intégrées du langage de script? Par exemple, je ne veux pas que les scripts puissent effectuer des E/S sauf à travers l'API que j'expose explicitement, donc pas d'impression sur la console, l'ouverture de fichiers, etc. Est-ce que ces langages de script offrent un moyen facile de faire ce?

+0

Je ne sais pas à quel point la protection dont vous avez besoin, mais ne pas oublier que sandbox peut également être nécessaire pour couvrir les attaques DOS - boucles infinies, etc. – stusmith

Répondre

3

J'ai utilisé Powershell comme un langage de script sur Windows et je l'ai trouvé très utile, et si vous êtes familier avec .NET, c'est d'autant plus facile. Téléchargez un deux page reference document here, c'est tout ce dont vous aurez besoin pour commencer.

Mais oui, vous pouvez utiliser l'espace de noms .NET System.IO pour effectuer des opérations IO via Powershell

même posté # this link