如何以Apache / WebDAV身份验证的用户身份进行读取/写入?
时间:2020-03-06 14:32:02 来源:igfitidea点击:
我已经在apache2中设置了DAV,效果很好。关键是,所有读/写操作都是使用apache用户的凭据完成的。相反,我想使用HTTP身份验证的用户凭据。如果我以" john"身份验证,则所有读取和写入操作都应使用系统用户john的凭据(来自/ etc / passwd)。 suEXEC似乎有点过分,因为我什么都不执行,但是我可能错了。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
这是当前配置:
<VirtualHost *:80> DocumentRoot /var/www/webdav ServerName webdav.mydomain.com ServerAdmin [email protected] <Location "/"> DAV On AuthType Basic AuthName "WebDAV Restricted" AuthUserFile /etc/apache2/extra/webdav-passwords require valid-user Options +Indexes </Location> DAVLockDB /var/lib/dav/lockdb ErrorLog /var/log/apache2/webdav-error.log TransferLog /var/log/apache2/webdav-access.log </VirtualHost>
解决方案
开枪回答,据我所知:你不知道。
长答案:可以通过适当的mpm来实现这样的功能,并且有各种各样的尝试,但是似乎并没有很积极地支持它们,至少在主线Apache代码库中没有。
使用者:
Q. Is peruser ready for production use? A. In general, no.
小孩:
This module is not functional. Development of this module is not complete and is not currently active. Do not use perchild unless you are a programmer willing to help fix it.
真的太糟糕了;无论如何,WebDav的大多数用法我都已经在应用程序层,数据库中存储了所有权信息。进行文件共享的共识是改为使用Samba。我承认那并不是真正的解决方案。
多年来,我们一直在使用davenport(http://davenport.sourceforge.net/)通过webdav提供对Windows / samba共享的访问。 Samba / Windows可以很好地控制这种情况,而Davenport使其可以通过SSL在Web上使用,而无需使用VPN