Lo ideal es que si ya usas sesiones .. usalo para todo el seguimiento del usuario en sus páginas/scripts que requieran tu autentificación ...
Usa tu própio formulario HTML de "login" y a partir de ahí sigue trabajando con tus sesiones y validación de la existencia de estas en todas las páginas de tu sitio.
Algunos "problemas" de seguridad en el acceso a archivos que se suelen solventar rápidamente con autentificación HTTP .. puedes solventarlo con otras técnicas o configuración del serivodor HTTP sobre el método que se permite para acceder al archivo o desde que "host" es tomado (si usas PHP para tomar el archivo y entregarlo + esa configuración = sólo PHP podría acceder al archivo) .. Otras soluciones más simples pero iguamente efectivas son la de mover los archivos (imagenes, zip .. etc ) fuera del "DOCUMENT_ROOT" para que no queden accesibles vía llamadas HTTP:
http://www.tal.tal/archivo.tal e indicar rutas absolutas hacia el archivo.
La autentificación HTTP tiene bastantes problemas para "eliminar" dicho "login" .. En PHP.net en los comentarios de los usuarios sobre autentificación HTTP hablan del tema pero .. no parece que hay una solución definitiva o más bien efectiva:
http://www.php.net/manual/en/features.http-auth.php
Un saludo,