注:我很感激这一个标签的一些建议..允许用户编程语言中的沙盒版本
我想提供我的用户在编程处理数据的方法服务器。这可以通过使用浏览器内代码编辑器在稍后的日期执行,与https://www.onx.ms的使用方式不同。
我想避免编写一个DSL(采用的障碍?),并希望用户编写的语言是JavaScript或基于Ruby的语言。
我明显的担心是安全性。我了解允许用户生成的代码运行服务器端的风险,但我可以采取哪些措施来消除风险?
像http://railsforzombies.com这样的网站实际上是使用irb
,还是比这更简单?
Caja不会针对拒绝服务攻击提供沙箱。它没有针对运行永久'while(true){}'循环或分配大量内存的用户的防御。沙盒iframe中的Javascript与Caja具有相同的安全保证(并且缺少dos保护),同时使用起来更简单并且更加标准。 – AgentME