módulovm
Módulo Sandbox, usado para illar ambientes operativos con diferentes niveis de seguridade
Ao establecer unha caixa de probas de illamento, pode limitar os recursos aos que poden acceder os scripts cando se executan, illar diferentes contornas de execución de scripts e personalizar os módulos básicos para diferentes ambientes para garantir a seguridade do ambiente operativo global.
O seguinte exemplo crea unha caixa de probas que restrinxe o acceso só aos módulos básicos globais.assertmódulo e engade dous módulos personalizados a e 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');
obxecto
SandBox
CrearSandBoxobxecto, verSandBox
1SandBox vm.SandBox;
Script
1Script vm.Script;
función estática
createContext
Crear un obxecto de contexto
1
2static Object vm.createContext(Object contextObject = {},
Object opts = {});
Parámetros de chamada:
- contextObject: Obxecto, especifica o obxecto que se vai contextualizar
- opts: Obxecto, especifica opcións de contexto
Resultados de devolución:
- Object, devolve o obxecto de contexto
isContext
Se se dáobjectÚsase obxectovm.createContext() para a contextualización, devolve verdadeiro
1static Boolean vm.isContext(Object contextObject);
Parámetros de chamada:
- contextObject: Obxecto, especifica o obxecto que se vai comprobar
Resultados de devolución:
- Boolean, se se dáobjectÚsase obxectovm.createContext() para a contextualización, devolve verdadeiro
runInContext
Executa o código especificado polo código dentro do contextualizedObject dado e devolve o resultado
1
2
3static Value vm.runInContext(String code,
Object contextifiedObject,
Object opts = {});
Parámetros de chamada:
- code: String, especifica o código de script que se vai compilar e executar
- contextifiedObject: Obxecto, especifica o obxecto de contexto de execución
- opts: Obxecto, especifique as opcións de execución
Resultados de devolución:
- Value, devolve o resultado da execución
Executa o código especificado polo código dentro do contextualizedObject dado e devolve o resultado
1
2
3static Value vm.runInContext(String code,
Object contextifiedObject,
String filename);
Parámetros de chamada:
- code: String, especifica o código de script que se vai compilar e executar
- contextifiedObject: Obxecto, especifica o obxecto de contexto de execución
- filename: Cadea, especifique o nome do ficheiro de script
Resultados de devolución:
- Value, devolve o resultado da execución
runInNewContext
Use o contextObject dado para executar o código especificado polo código no contexto creado e devolver o resultado.
1
2
3static Value vm.runInNewContext(String code,
Object contextObject = {},
Object opts = {});
Parámetros de chamada:
- code: String, especifica o código de script que se vai compilar e executar
- contextObject: Obxecto, especifica o obxecto que se vai contextualizar
- opts: Obxecto, especifique as opcións de execución
Resultados de devolución:
- Value, devolve o resultado da execución
Use o contextObject dado para executar o código especificado polo código no contexto creado e devolver o resultado.
1
2
3static Value vm.runInNewContext(String code,
Object contextObject = {},
String filename);
Parámetros de chamada:
- code: String, especifica o código de script que se vai compilar e executar
- contextObject: Obxecto, especifica o obxecto que se vai contextualizar
- filename: Cadea, especifique o nome do ficheiro de script
Resultados de devolución:
- Value, devolve o resultado da execución
runInThisContext
Executa o código especificado polo código no contexto actual e devolve o resultado
1
2static Value vm.runInThisContext(String code,
Object opts = {});
Parámetros de chamada:
- code: String, especifica o código de script que se vai compilar e executar
- opts: Obxecto, especifique as opcións de execución
Resultados de devolución:
- Value, devolve o resultado da execución
Executa o código especificado polo código no contexto actual e devolve o resultado
1
2static Value vm.runInThisContext(String code,
String filename);
Parámetros de chamada:
- code: String, especifica o código de script que se vai compilar e executar
- filename: Cadea, especifique o nome do ficheiro de script
Resultados de devolución:
- Value, devolve o resultado da execución