Django - Entendiendo X-Sendfile

He estado investigando sobre descargas de archivos con control de acceso, usando Django. Mi objetivo es bloquear completamente el acceso a un archivo, excepto cuando un usuario específico accede a él. He leído que cuando uso Django, X-Sendfile es uno de los métodos de elección para lograr esto (basado en otras preguntas SO, etc.). Mi comprensión rudimentaria del uso de X-Sendfile con Django es:

User solicita URI para obtener un archivo protegidoa aplicación @Django decide qué archivo devolver en función de la URL y verifica el permiso del usuario, etc.a aplicación @Django devuelve una respuesta HTTP con el encabezado 'X-Sendfile' configurado en la ruta del archivo del servidor El servidor web encuentra el archivo y lo devuelve al solicitante (supongo que el servidor web también elimina el encabezado 'X-Sendfile' en el camino)

En comparación con tirar el archivo directamente desde Django, X-Sendfile parece ser un método más eficiente para lograr descargas protegidas (ya que puedo confiar en Nginx para servir archivos, frente a Django), pero me deja 2 preguntas:

Mi explicación de X-Sendfile es al menos abstractamente correcta? ¿Es realmente seguro, suponiendo que no proporciono acceso HTTP front-end normal (por ejemplo,http: //www.example.com/downloads/secret-file.jp) al directorio donde está almacenado el archivo (es decir, no lo guarde en mipublic_html directorio)? O, ¿podría un usuario experto en tecnología examinar encabezados, etc. y realizar ingeniería inversa para acceder a un archivo (para luego distribuirlo)? ¿Es realmente una gran diferencia en el rendimiento? ¿Voy a atascar mi servidor de aplicaciones al proporcionar descargas fragmentadas de 8b de archivos de 150Mb directamente desde Django, o esto no es un problema? La razón por la que pregunto es porque si ambas versiones son casi iguales, la versión de Django sería preferible debido a mi capacidad para hacer cosas en Python, como registrar el número de descargas completadas, contar el ancho de banda de descargas, etc.

Gracias por adelantado

Respuestas a la pregunta(1)

Su respuesta a la pregunta