小编Jef*_*man的帖子

如何保护使用javax.scripting运行的脚本?

我正在使用javax.scripting添加支持在服务器端运行任意用户上传的JavaScripts.显然我想要保护这些脚本!

Rhino本身就有一个用于在运行时保护脚本的框架.javax.scripting但是,该文档未提及脚本可用的安全性,权限或限制类.那么这只是javax.scriptingAPI中的一个巨大漏洞,它没有提供一个框架来保护它执行的脚本吗?

我不想直接使用Rhino,因为我最初尝试过但是在将Java实例暴露给正在运行的脚本时遇到了一些问题.该javax.scripting框架由它(它使用犀牛罩下)在一个多线程服务器使这个琐碎,并且还简化了运行脚本.

我想列出可在运行脚本中访问/实例化的Java类.有人能指出我如何实现这一目的的示例或文档吗?

javascript security javax.script server-side-scripting

16
推荐指数
1
解决办法
4553
查看次数

这两个Lua示例之间有什么区别?一个更好吗?

我刚刚开始使用Lua.在我正在学习的例子中(Ghosts&Monsters Corona开源),我反复看到这种模式.

local director = require("director")

local mainGroup = display.newGroup()

local function main()

   mainGroup:insert(director.directorView)

   openfeint = require ("openfeint")
   openfeint.init( "App Key Here", "App Secret Here", "Ghosts vs. Monsters", "App ID Here" )

   director:changeScene( "loadmainmenu" )

   return true
end

main()
Run Code Online (Sandbox Code Playgroud)

这是Lua程序员推荐的某种惯例,或者这样做是否有真正的优势?为什么你不能一起跳过这个功能并执行此操作:

local director = require("director")

local mainGroup = display.newGroup()

mainGroup:insert(director.directorView)

local openfeint = require ("openfeint")
openfeint.init( "App Key Here", "App Secret Here", "Ghosts vs. Monsters", "App ID Here" )

director:changeScene( "loadmainmenu" )
Run Code Online (Sandbox Code Playgroud)

第二种风格对第一种风格有一些隐含的好处吗?谢谢!

lua

5
推荐指数
1
解决办法
834
查看次数