Tengo python incrustado en una aplicación como una plataforma de scripts para que los usuarios puedan escribir scripts de Python. Estoy tratando de evitar las importaciones para que no puedan causar daños de todos modos y tengan que apegarse a la API proporcionada.Prevención de importaciones en Python
he llegado con el siguiente código Python:
__builtins__ .__import__= None
reload = None
esto parece impedir las importaciones y evita la carga de módulos. Se requiere la prevención de la recarga para que no puedan volver a cargar los builtins devolviéndoles una importación que funcione.
Sin embargo, no soy un experto en Python. ¿Hay algo más que me falta que el usuario todavía puede hacer para importar módulos?
Gracias
Por favor, eche un vistazo a esta [pregunta] (http://stackoverflow.com/q/3068139/183066). – jcollado
Gracias. A partir de esa publicación, se resalta que en realidad hay muchas otras cosas peligrosas además de la importación, por lo que evitar la importación probablemente no sea suficiente. –
Si el usuario ejecuta una aplicación en su máquina, ¿qué puede ser "peligroso" para permitirle hacer un uso completo de Python? ¿O su aplicación recibirá secuencias de comandos en un servidor de usuarios remotos no confiables? – jsbueno