Intento incrustar algunas funciones de guiones Lua en mi aplicación C# utilizando LuaInterface 2.0.3. Esto funciona bien hasta el momento, pero no puedo encontrar la manera de restringir el acceso a solo algunas clases .Net especificadas. Por defecto, todas las bibliotecas .Net son accesibles directamente a través de "luanet" y los scripts de Lua son libres de abrir ventanas nuevas o acceder al sistema de archivos.LuaInterface - cómo restringir el acceso a las clases .Net?
p. Ej. este script Lua se abrirá una nueva ventana:
Form = luanet.System.Windows.Forms.Form
mainForm = Form()
mainForm:ShowDialog()
Libertad de secuencias de comandos es grande y todo, pero esto es probable que interfiera con la aplicación de alojamiento y tiene algunas implicaciones relacionadas con la seguridad que no soy demasiado aficionado. ¿Hay alguna forma de desactivar esto?
Es posible que esto obtenga una mejor respuesta en Games Development, http://gamedev.stackexchange.com/. Es algo que los desarrolladores de juegos tienen más probabilidades de haber hecho en el pasado, y parece que se trata de desarrollo de juegos de todos modos. – Glenn
Una pregunta menos específica sobre sandboxing Lua, que puede apuntarle en la dirección correcta, está aquí: http://stackoverflow.com/questions/1224708/how-can-i-create-a-secure-lua-sandbox – BMitch