W wielu aplikacjach Python, które stworzyłem, często tworzę proste moduły zawierające tylko stałe, które będą używane jako pliki konfiguracyjne. Dodatkowo, ponieważ plik konfiguracyjny jest w rzeczywistości plikiem kodu Pythona, mogę dodać prostą logikę do zmiany zmiennych w zależności od poziomu debugowania, itp.Czy istnieje "bezpieczny" podzestaw języka Python do użycia jako osadzony język skryptowy?
Chociaż działa to doskonale w aplikacjach wewnętrznych, nie chciałbym publikować takich aplikacji na wolności, bojąc się kogoś przypadkowo lub złośliwie, dodając destrukcyjny kod do pliku. To samo dotyczy używania Pythona jako osadzonego języka skryptowego.
Czy istnieje podzbiór Python, który jest uważany za "bezpieczny" do osadzania? Zdaję sobie sprawę, jak bezpiecznie można go uznać za dość subiektywny. Jednak aplety Java i Flash mają dobrze zdefiniowaną przestrzeń izolacyjną. Zastanawiam się, czy istnieje wersja Pythona, która ma podobne zasady?
EDIT: Pytam nie tyle ze względu na podejście pliku konfiguracyjnym, ale dlatego, że jestem zainteresowany w realizacji niektórych mechanizmów skryptów/wtyczki do nowszych aplikacji i nie chcą plugin lub skrypt być w stanie, powiedzmy, usuwać pliki. Wykracza to poza zakres tego, co aplikacja powinna być w stanie zrobić.
Co oznacza "złośliwy" w tym kontekście? Pobieram twoje oprogramowanie, konfiguruję je, spieprzę konfiguracje, robiąc zbyt wiele niebezpiecznego kodu. Jak to jest "złośliwe"? Brzmi dla mnie "głupio". Pytasz "co mogę zrobić, aby uniemożliwić użytkownikom bycie głupim?" –