2013-03-21 13 views
7

official docs powiedzieć, z staticfiles serve widok:Problemy z bezpieczeństwem podczas udostępniania plików statycznych za pośrednictwem Django?

... Pogląd ten rażąco nieskuteczny i prawdopodobnie niepewna

Czy to ostrzeżenie stosuje się tylko do tej konkretnej widzenia, czy są kwestie bezpieczeństwa nieodłączne w koncepcji udostępniania plików statycznych za pośrednictwem Django? Czym oni są? Zakładając, że dokonałem analizy porównawczej mojej aplikacji i jej wydajność jest do przyjęcia, czy są jakieś inne problemy, o których powinienem wiedzieć?

Odpowiedz

8

To niebezpieczne, ponieważ nie muszą być bezpieczne

serwowania statycznych plików przez Django oznacza, że ​​przechodzą kodu Pythona zrobić coś nasz serwer zrobi znacznie bardziej efektywnie.

Biorąc pod uwagę, że wyświetlanie statycznych plików jest katastrofalne z punktu widzenia wydajności, nikt nie użyłby tego w produkcji.
Dlatego nikt nie dba o bezpieczeństwo udostępniania plików statycznych w Django.
W związku z tym ten widok to prawdopodobnie niezabezpieczony.


Ostatecznie jest to ta sama racjonalna przesłanka co serwer programistyczny. Nie jesteście Państwo pewni, że używacie go w produkcji i nikt nie poświęca wysiłku, aby go zabezpieczyć. Jest po prostu praktyczny dla rozwoju.

Ponadto, coś nieefektywnego jest czymś, co naraża Cię na ataki DoS. Tak, to jest niepewne.

Ale nie powinieneś go używać.

Dlaczego udostępniasz pliki statyczne w Django? Czy ma kontrolować dostęp do tych plików?

Jeśli tak, powinieneś użyć nagłówków X-Accel-Redirect (Nginx) lub (Apache).

Ale nie rób tego sam, użyj: https://github.com/johnsensible/django-sendfile

Powiązane problemy