2009-04-07 9 views

Respuesta

8

Se describe un método para bloquear el acceso a ciertos paquetes y clases (incluso a través de la reflexión) en Rhino here. La interfaz más importante es ClassShutter que proporciona control de acceso para el soporte LiveConnect de Rhino.

+1

Irónicamente, el enlace a codeutopia.net sobre el bloqueo de acceso está volviendo 403 Prohibido para mí –

1

¿qué tal solo decir:

java = undefined; com = undefined; Paquetes = undefined;

en un script inicial que se carga primero.

+3

Un enfoque interesante, probablemente funciona si desea desactivar * todo * el acceso a Java (no solo paquetes específicos). Por otro lado, probablemente aún puedas hacer 'obj.getClass(). ForName (" a.b.c.TheClass "). NewInstance()' para cualquier objeto que tengas en el alcance del intérprete. – Thilo

+0

@Thilo no si sus objetos son javascript (lo cual es lo que debe hacer) – Zo72

+0

Esa es una mala idea ya que los métodos de JavaScript parecen llamar a funciones 'java.io' que luego fallarán si no pueden encontrar el' java' clase. Intente evaluar 'print (" Hello World ");' después de undefinir 'java' y ver dónde se encuentra -' TypeError: No se puede leer la propiedad "io" de undefined'. – chrixm

Cuestiones relacionadas