【问题标题】:How to sandbox a class? [closed]如何沙箱类? [关闭]
【发布时间】:2013-03-08 10:07:45
【问题描述】:

假设我有一个网站,人们可以在该网站上以课堂形式上传他们的代码。我怎么能限制该类中实际可以做的事情?

【问题讨论】:

  • 恐怕答案是,写你自己的解析器:-(
  • 顺便说一句 - 这与 PHP 有什么关系?我假设您打算在服务器上运行这些类是对的吗?
  • @AndrewThompson 我也对 PHP 感兴趣。看到这个网站后想到了这个问题:ideone.com
  • 您可能想看看Robocode 的源代码,它使人们可以创建在沙盒中相互竞争的Java 程序。他们的安全模型听起来与您正在寻找的相似。

标签: java php security sandbox securitymanager


【解决方案1】:

为客户端代码实现SecurityManager1。我还建议测试代码运行多长时间,如果超过限制就结束它(这更旨在捕捉导致无限循环的程序员无能,而不是故意的恶意行为)。

  1. 例如如this answer 中所见,旨在实现Preventing System.exit() from API

【讨论】:

    猜你喜欢
    • 2015-06-20
    • 2011-06-04
    • 1970-01-01
    • 2018-05-28
    • 1970-01-01
    • 2010-12-15
    • 2021-07-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多