在最低安全性上下文中运行DLR嵌入式脚本

Jos*_*rce 3 .net c# ironpython ironruby dynamic-language-runtime

我需要指出正确的方向.我已经将Iron Python脚本主机嵌入到一个简单的C#应用​​程序中,但现在我需要了解锁定用户生成的IronPython或IronRuby脚本的安全性的最佳实践.

具体来说,什么是防止库导入的策略,并且在.NET中没有办法在不同的安全上下文中运行代码块或线程,例如防止文件系统访问?此外,是否可以为此上下文分配内置级别或角色而不是实际用户?

谢谢!

Ser*_*oda 5

您应该在不同的appdomain中运行脚本主机,并使用沙盒API通过Evidence属性设置安全策略