PysandBox.

Python Sandbox
Scarica ora

PysandBox. Classifica e riepilogo

Annuncio pubblicitario

  • Rating:
  • Licenza:
  • BSD License
  • Prezzo:
  • FREE
  • Nome editore:
  • Victor Stinner
  • Sito web dell'editore:
  • http://fusil.hachoir.org/trac

PysandBox. Tag


PysandBox. Descrizione

Python sandbox pysandbox è un sandbox Python. Per impostazione predefinita, il codice non attendibile eseguito nella sandbox non può modificare l'ambiente (scrivere un file, stampa uso o importare un modulo). Ma è possibile configurare la sandbox di scegliere esattamente quali funzioni sono consentite o meno, ad esempio. modulo di importazione sys e leggere / etc / issue class file.ConfigurationUse SandboxConfig per configurare il sandbox. Caratteristiche sono il modo più semplice per configurare it.FeaturesTo abilitare una funzione, utilizzare SandboxConfig ( 'feature1', 'feature2', ...) o config.enable ( 'caratteristica'). Caratteristiche disponibili: * "codice": compile () incorporati, frame.f_locals e generator.gi_code * "debug_sandbox": consentire traceback della sandbox per sé * "uscita": sys.exit (), BaseException, KeyboardInterrupt, SystemExit, quit ( ) * "futuro": da __future__ import ... * "help": pydoc.help (), l'uso "import pydoc" al di fuori della sandbox di usarlo * "interprete": l'accesso dare ai flussi standard, abilitare traceback * "regex ": regex compilazione, match regex, ricerca regex, ecc (modulo re) * "sito": permette di leggere il file di licenza * "stdin": sys.stdin, input () e raw_input () * "stdout"," stderr ": sys.stdout e sys.stderr * "traceback": prossimi inviti a allowModule () aggiungerà il nome del file modulo alla open () whitelist, in modo Python può visualizzare un traceback con il codice sorgente * "unicodedata": modulo unicodedata , richiesto per u'N {ATOM SIMBOLO}' syntaxCPython limitato modeUse SandboxConfig (cpython_restricted = true) per abilitare la modalità CPython limitato. In questa modalità, la lettura di un file e modificare una classe sono bloccati. Alcuni attributi sono nascosti (ad es. Il metodo .__ self__), altri sono di sola lettura (ad es. Func .__ doc __). CPython limitato modalità è disattivata per default. La modalità limitata è incompatibile con SandboxConfig funzione "traceback" e allowPath () Modalità method.The limitato non esiste in python3 più, è stato rimosso con moduli bastion e rexec: http://svn.python.org/view?view = = revrevision opzioni 55301Other * config.timeout: timeout in secondi. Utilizzare Nessuno per disattivare il timeout. valore di timeout predefinito è di 5 secondi. * Config.allowPath (percorso) consente di leggere un file dal percorso specificato il metodo * config.allowModule (nome, symbol1, symbol2, ...) permette di importare il modulo specificato, ma dare solo l'accesso alla chiamata symbolsExampleWith specificato () : da sandbox import Sandboxdef func (a, b): restituire un + bsandbox = sandbox () sandbox.call stampa (func, 1, 2) con execute () metodo: dalla sandbox importazione sandbox, SandboxConfigsandbox = sandbox (SandboxConfig ( 'stdout ')) sandbox.execute (' print ( "Codice eseguito nella sandbox") ') execute () con una variabile locale: dalla sandbox importazione sandbox, SandboxConfigsandbox = sandbox (SandboxConfig (' stdout ')) sandbox.execute (' stampa (dati)', locals = { 'dati': }) # oksandbox.execute ( 'data.append (4)', locals = { 'dati': } ) # errorObjects passati al .Call () GLOBALS / locali e .execute () argomenti vengono proxified: essi vengono sostituiti da una vista di sola lettura del objects.pysanbox è testato su Python 2.5 e 2.6 su Debian Sid.


PysandBox. Software correlato