.htaccess 是否可以将ldap授权从web门户cgi表单转发到apache中的目录

.htaccess 是否可以将ldap授权从web门户cgi表单转发到apache中的目录,.htaccess,perl,ldap,cgi,.htaccess,Perl,Ldap,Cgi,我正在开发一个web门户,其中用户通过perl CGI表单通过LDAP进行身份验证。身份验证过程使用Net::LDAPS模块。登录时,系统保持用户的身份验证状态并创建CGI cookie,用户可以通过门户执行各种操作,主要是与数据库交互,直到用户注销 在同一台服务器上有一个包含一些文件的目录。我希望用户能够登录到web门户,然后浏览文件目录,并能够下载这些文件 我能想到的最简单的方法是将带有“选项+索引”和ldap身份验证的htaccess文件放入目录中,但这需要另一个未与web门户链接的登录

我正在开发一个web门户,其中用户通过perl CGI表单通过LDAP进行身份验证。身份验证过程使用Net::LDAPS模块。登录时,系统保持用户的身份验证状态并创建CGI cookie,用户可以通过门户执行各种操作,主要是与数据库交互,直到用户注销

在同一台服务器上有一个包含一些文件的目录。我希望用户能够登录到web门户,然后浏览文件目录,并能够下载这些文件

我能想到的最简单的方法是将带有“选项+索引”和ldap身份验证的htaccess文件放入目录中,但这需要另一个未与web门户链接的登录


有没有办法将基于web门户cgi的ldap身份验证链接到htaccess文件?

您提到用户可以注销,然后不再使用门户。但是,没有一种可移植的方法可以通过基本身份验证将用户注销。他们将能够继续浏览目录

您可以简单地为数据目录和门户配置LDAP身份验证,而不是对用户进行身份验证的CGI脚本。难看,但它会起作用


对您来说,更好、更干净的选择是提供对数据目录的访问,而不是直接访问,而是仅通过门户访问。如果您使用Apache的路径信息功能(),您甚至不必费心检查路径中是否存在恶意的“../....”构造,URI在您的用户看来将非常自然。

感谢您的回答。CGI门户的问题是,它还根据数据库中的用户列表检查用户,以确定门户中操作的权限,因此要改变这一点需要做大量的工作。而且,由于我要链接到的目录包含敏感数据,所以我不能使用类似“使用HTTP\U REFERER重写”或“HTTP\U COOKIE重写”之类的方法。你能推荐一种通过包含来自门户的LDAP授权的门户链接的方法吗?我真的不明白。我的回答的意思是,您应该为这些目录实现一个小型的explorer/Mac Finder,作为门户的一个组件。如果用户请求,您将显示
$docroot/path/to/dir
的索引页,如果用户导航到,您将在响应正文中返回pdf。您的cgi脚本检查用户是否经过身份验证,就像门户的其他脚本一样。编写finder.pl不是火箭科学。