如何限制lua的可能性(调用操作系统函数、模块等)?

我在我的C应用程序中使用Lua作为脚本语言。

这很适合我,但我不知道如何限制Lua不调用系统函数,包括其他模块等。

我希望Lua只能调用我允许的函数,因为用户可以利用完整的Lua + Lua模块的功能做出各种坏事。

原文链接 https://stackoverflow.com/questions/3627954

点赞
stackoverflow用户107090
stackoverflow用户107090

sandbox就是你要找的术语。简而言之,只要导出那些你想让用户调用的函数到Lua中即可。实际上,这很简单。

2010-09-02 17:47:56
stackoverflow用户1205758
stackoverflow用户1205758

你可以通过不加载 ospackage 模块来实现这一点。不要使用 luaL_openlibs,可以参考这篇文章

2013-03-02 18:48:21