Язык сценариев в песочнице для приложения C # /. NET

[Этот вопрос похож на этот, но я также интересуется возможностью создания песочницы.]

Я рассматриваю возможность встраивания языка сценариев в свое приложение C # /. NET, а затем предоставить сценариям некоторые из API моего приложения. Кажется, есть несколько хороших вариантов для этого (Lua, Boo, IronPython и т. Д.), Но есть ли простые варианты ограничения использования встроенных функций языка сценариев? Например, я не хочу, чтобы сценарии могли выполнять ввод-вывод, кроме как через API, который я явно раскрываю, чтобы не печатать на консоли, не открывать файлы и т. Д. Любой из этих языков сценариев предоставляет простой способ сделать это?


person Kevin Albrecht    schedule 19.02.2009    source источник
comment
Не уверен, какая защита вам нужна, но не забывайте, что песочница также может потребоваться для защиты от DOS-атак - бесконечных циклов и т. Д.   -  person stusmith    schedule 19.02.2009


Ответы (2)


Вы можете загрузить сценарий te в другой домен приложений и управлять разрешениями второго домена приложений.

Эта ссылка должна помочь вам начать работу:
http://blogs.msdn.com/shawnfa/archive/2005/08/08/449050.aspx

person Nir    schedule 19.02.2009

Я сам использовал Powershell в качестве языка сценариев для Windows и нашел его очень полезным, а если вы знакомы с .NET, то это тем проще.

Загрузите две страницы здесь, это все, что вам нужно для начала.

Но да, вы можете использовать пространство имен .NET System.IO для выполнения операций ввода-вывода через Powershell

тот же опубликовал # эту ссылку

person Binoj Antony    schedule 19.02.2009