Python 沙箱有 rexec 的替代方案吗?
题
在 Python 中实现“沙箱”环境过去是通过 rexec 模块完成的(http://docs.python.org/library/rexec.html)。不幸的是,由于一些安全漏洞,它已被弃用/删除。还有其他选择吗?
我的目标是让 Python 代码执行半可信的 Python 脚本。在完美的世界中,调用预定义集之外的任何函数都会引发异常。根据我读到的有关 rexec 弃用的信息,这可能是不可能的。所以我会尽可能地满足。我可以生成一个单独的进程来运行脚本,这很有帮助。但他们仍然可能滥用 I/O 或处理器/内存资源。
解决方案
您可能需要提供自己的__import__
防止包括您认为任何模块的“滥用I / O或处理器/内存资源。”
您可能要开始与 pypy ,并创建自己的解释与局限性和资源利用的限制。
不隶属于 StackOverflow