我想在我们的C ++应用程序中嵌入Python 3.x,以允许编写维护和其他任务的脚本。它到目前为止我们需要的一切包括文件操作。
问题在于,为了满足某些规范(如PCI),我们不允许随意运行shell命令,例如使用subprocess.call或popen。
有没有办法防止和类似的调用在嵌入式Python中工作?
答案 0 :(得分:0)
一个选项是删除允许运行任意shell命令的所有模块,即:subprocess.py *,os.py * ...并且仅包括允许最终用户立即访问的模块。< / p>
答案 1 :(得分:0)
除非您的应用程序确实被锁定,否则我认为您不能阻止某人从任意目录(带导入)加载自己的python模块,因此我认为只要您不能阻止执行任意代码有python嵌入。