Sto scrivendo un programma in stile wiki personale in python che memorizza i file di testo in una directory configurabile dall'utente.Convalidare un nome file in python
Il programma dovrebbe essere in grado di prendere una stringa (ad esempio "pippo") da un utente e creare un nome file di foo.txt. L'utente sarà in grado di creare il file all'interno della directory wiki e le barre creeranno una sottodirectory (ad esempio "foo/bar" diventa "(path-to-wiki) /foo/bar.txt").
Qual è il modo migliore per verificare che l'ingresso sia il più sicuro possibile? Cosa devo fare attenzione (directory traversal - "../"?, Null bytes - "\ 0"?).
Mi rendo conto che l'input dell'utente per i nomi di file non è mai sicuro al 100%, ma il programma verrà eseguito solo localmente e voglio solo evitare eventuali errori/glitch comuni.
Cosa target? Quali versioni di Python? –
@ IgnacioVazquez-Abrams: sì, ma i file di testo in chiaro nel file system hanno altri vantaggi. – Puzzled79
@ g.d.d.c: Python 2.7 e/o 3.2 e principalmente MacOS/Linux. – Puzzled79