В моем приложении Python я буду называть сторонние модули Python. Но эти модули должны иметь некоторые ограничения для проблем безопасности. Например, они не могут называть некоторые низкоуровневые функции ввода-вывода. Могу ли я запретить этим сторонним модулям вызывать определенные функции (модули)?
В моем понимании я могу использовать два способа:
- Проверяйте сторонний код статически, прежде чем мы его используем. Это очень сложно сделать. Конечно, я могу использовать некоторый код, чтобы сделать это автоматически, но это небезопасно, потому что некоторые люди могут использовать некоторые трюки, чтобы избежать этого.
- Сделайте несколько конфигураций, чтобы ошибки были подняты, если сторонний код совершил некоторые незаконные операции. Как я могу сделать это правильно? Я не могу просто удалить некоторые модули, потому что некоторые файлы могут импортировать их, а некоторые не могут.
Есть ли лучшие идеи для этого?