我希望外部用户能够通过Web客户端构建c#文件,并在服务器上构建和运行它们,并将内容输出回用户,就像dot-net-fiddle一样。
问题在于安全问题,我如何允许代码不是恶意代码并启动进程或写入文件?
我已经了解了应用程序信任级别,这是一个可行的选择吗?我想要更独立的东西,我可以轻松更改应用程序中的级别,以立即查看结果。
我也看了一下这些SecurityPermission,但无法正常工作。
[assembly: SecurityPermission(SecurityAction.RequestRefuse, Assertion = true)]
答案 0 :(得分:0)
您可能考虑的一个选项是docker。现在微软正在发布一个dotnet docker容器,你可以在隔离容器中进行构建和执行,控制资源使用,然后清理整个容器。