[pyar] Proteger AngularJS static files con Django

Luis Masuelli luismasuelli en hotmail.com
Mar Abr 28 16:17:30 ART 2015


En mi approach no se usarian archivos estaticos para estas plantillas. Se usarian plantillas con verbatim. Si fuera un archivo estatico, podrias repetir la ruta en otro momento y seria igualmente accesible (los archivos estaticos externos no son controlables por django) sin estar autenticado.

From: gaitan en gmail.com
Date: Tue, 28 Apr 2015 12:24:10 -0300
To: pyar en python.org.ar
Subject: Re: [pyar] Proteger AngularJS static files con Django

2015-04-28 12:10 GMT-03:00 Luis Masuelli <luismasuelli en hotmail.com>:
No es un tema dificil. Por cada template craen /una/vista/de/django, y que sea un simple TemplateView que renderice un template determinado. No olviden dos cosas:

1. Los templates de AngularJS se cargan mediante ajax, por lo que este metodo sirve.
2. Recuerden usar tags {% verbatim %} envolviendo el contenido de los templates, asi no interpreta {{ los_bindings }} como si fueran variables de django.
3. Que el punto devuelva un crudo y feo 403 si no esta logueado. No usen login_required para esto porque sino en caso de no estar logueado les va a renderizar como template el formulario de login.
4. No se como corno reacciona Angular cuando, al buscar una plantilla, obtenga un 403. Usenlo a discreción.
Sólo a modo de complemento:

Este approach sencillo es válido cuando el "static" a servir es pequeño. Si, por ejemplo, lo que se busca es proteger una descarga (supongamos, un PDF de 10mb), lo mejor es hacer que la lógica de permisos la maneje Django, pero la respuesta autorizada la de el webserver. De esta manera no tenemos que leer el archivo para generar el HttpResponse y así es mucho más eficiente. 

Esto se puede hacer facilmente con django-sendfile [1] que es, por ejemplo, lo que usa Waliki [2] para chequear que sólo quien tiene permisos para ver una determinada página puede ver/descargar los adjuntos de esa página. 


[1] https://github.com/johnsensible/django-sendfile[2] https://github.com/mgaitan/waliki

-- 
mgaitan.github.io
textosypretextos.com.ar


_______________________________________________
pyar mailing list pyar en python.org.ar
http://listas.python.org.ar/listinfo/pyar

PyAr - Python Argentina - Sitio web: http://www.python.org.ar/

La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de Argentina - http://www.usla.org.ar 		 	   		  
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20150428/ba476b0d/attachment.html>


More information about the pyar mailing list