我正在编写一个应用程序,我希望用户能够输入角落案例的python文件。在我的脑海中,我能想到的最好办法是将其文件保存到磁盘并将位置保存到数据库,然后使用__import__()
动态导入它,然后执行它。我的问题的第一部分是:这是做这件事的最好方法吗?动态读取一个python文件并安全地执行它
此外,这带来了一些相当大的安全问题。有没有办法在限制下运行他们的模块?不让它看到文件系统或任何东西?
编辑:
蟒蛇的执行将检索来自后端服务,是“正常”范围以外的数据,因此,它不会是一个完整的应用程序。它可能只是一个自定义协议的定义。
http://wiki.python.org/moin/SandboxedPython ...我要把它作为答案......但真的只是读了这篇文章... –