mòdulvm
Mòdul Sandbox, utilitzat per aïllar entorns operatius amb diferents nivells de seguretat
En establir una caixa de proves d'aïllament, podeu limitar els recursos als quals poden accedir els scripts quan s'executen, aïllar diferents entorns d'execució d'scripts i personalitzar mòduls bàsics per a diferents entorns per garantir la seguretat de l'entorn operatiu global.
L'exemple següent crea una zona de proves que restringeix l'accés només als mòduls bàsics globals.assertmòdul i afegiu dos mòduls personalitzats a i b:
1
2
3
4
5
6
7
8var vm = require('vm');
var sbox = new vm.SandBox({
a: 100,
b: 200,
assert: require('assert')
});
var mod_in_sbox = sbox.require('./path/to/mod');
objecte
SandBox
CrearSandBoxobjecte, veureSandBox
1SandBox vm.SandBox;
Script
CrearScriptobjecte, veureScript
1Script vm.Script;
funció estàtica
createContext
Crear un objecte de context
1
2static Object vm.createContext(Object contextObject = {},
Object opts = {});
Paràmetres de trucada:
- contextObject: Objecte, especifica l'objecte a contextualitzar
- opts: Objecte, especifica opcions de context
Resultats de retorn:
- Object, retorna l'objecte de context
isContext
Si es dónaobjectS'utilitza l'objectevm.createContext() per a la contextualització, retorna true
1static Boolean vm.isContext(Object contextObject);
Paràmetres de trucada:
- contextObject: Objecte, especifica l'objecte a comprovar
Resultats de retorn:
- Boolean, si es dónaobjectS'utilitza l'objectevm.createContext() per a la contextualització, retorna true
runInContext
Executa el codi especificat pel codi dins de l'Object contextualitzat donat i retorna el resultat
1
2
3static Value vm.runInContext(String code,
Object contextifiedObject,
Object opts = {});
Paràmetres de trucada:
- code: String, especifica el codi d'script que s'ha de compilar i executar
- contextifiedObject: Objecte, especifica l'objecte de context en temps d'execució
- opts: Objecte, especifica les opcions d'execució
Resultats de retorn:
- Value, retorna el resultat de l'execució
Executa el codi especificat pel codi dins de l'Object contextualitzat donat i retorna el resultat
1
2
3static Value vm.runInContext(String code,
Object contextifiedObject,
String filename);
Paràmetres de trucada:
- code: String, especifica el codi d'script que s'ha de compilar i executar
- contextifiedObject: Objecte, especifica l'objecte de context en temps d'execució
- filename: Cadena, especifiqueu el nom del fitxer de l'script
Resultats de retorn:
- Value, retorna el resultat de l'execució
runInNewContext
Utilitzeu el contextObject donat per executar el codi especificat pel codi en el context creat i retornar el resultat.
1
2
3static Value vm.runInNewContext(String code,
Object contextObject = {},
Object opts = {});
Paràmetres de trucada:
- code: String, especifica el codi d'script que s'ha de compilar i executar
- contextObject: Objecte, especifica l'objecte a contextualitzar
- opts: Objecte, especifica les opcions d'execució
Resultats de retorn:
- Value, retorna el resultat de l'execució
Utilitzeu el contextObject donat per executar el codi especificat pel codi en el context creat i retornar el resultat.
1
2
3static Value vm.runInNewContext(String code,
Object contextObject = {},
String filename);
Paràmetres de trucada:
- code: String, especifica el codi d'script que s'ha de compilar i executar
- contextObject: Objecte, especifica l'objecte a contextualitzar
- filename: Cadena, especifiqueu el nom del fitxer de l'script
Resultats de retorn:
- Value, retorna el resultat de l'execució
runInThisContext
Executa el codi especificat pel codi dins del context actual i retorna el resultat
1
2static Value vm.runInThisContext(String code,
Object opts = {});
Paràmetres de trucada:
- code: String, especifica el codi d'script que s'ha de compilar i executar
- opts: Objecte, especifica les opcions d'execució
Resultats de retorn:
- Value, retorna el resultat de l'execució
Executa el codi especificat pel codi dins del context actual i retorna el resultat
1
2static Value vm.runInThisContext(String code,
String filename);
Paràmetres de trucada:
- code: String, especifica el codi d'script que s'ha de compilar i executar
- filename: Cadena, especifiqueu el nom del fitxer de l'script
Resultats de retorn:
- Value, retorna el resultat de l'execució