Kann ich die Umask für tempfile.NamedTemporaryFile in Python setzen?

7

In Python (versuchte dies in 2.7 und unten) sieht es so aus, als ob eine Datei, die mit tempfile.NamedTemporaryFile erstellt wurde, anscheinend nicht der Umask-Direktive folgt:

%Vor%

Irgendeine Idee, warum NamedTemporaryFile die Umask nicht aufnimmt? Gibt es eine Möglichkeit, dies während der Dateierstellung zu tun?

Ich kann dies immer mit os.chmod () umgehen, aber ich habe auf etwas gehofft, das während der Dateierstellung das Richtige getan hat.

    
shreddd 10.05.2012, 20:36
quelle

2 Antworten

22

Dies ist eine Sicherheitsfunktion. Der NamedTemporaryFile wird immer mit dem Modus 0600 erstellt, der in tempfile.py , Zeile fest codiert ist 235 , weil es für Ihren Prozess privat ist, bis Sie es mit chmod öffnen. Es gibt kein Konstruktorargument, um dieses Verhalten zu ändern.

    
Fred Foo 10.05.2012, 20:53
quelle
2

Falls es jemandem helfen könnte, wollte ich mehr oder weniger dasselbe machen, hier ist der Code, den ich benutzt habe:

%Vor%     
Pierre 23.05.2017 09:15
quelle

Tags und Links