Ale*_*ias 11 svn webdav apache2
我已经使用Apache/WebDAV接口为Subversion设置了一个Ubuntu Server,以便与其他开发人员共享存储库.我的问题是,如何让Subversion使用linux系统帐户进行身份验证?这将导致Subversion帐户管理非常简单.Apache/WebDAV的Subversion目前正在使用此配置:
/etc/apache2/mods-available/dav_svn.conf的内容:
<Location /svn>
DAV svn
SVNParentPath /home/svn
SVNListParentPath On
AuthType Basic
AuthName "Subversion Repository"
AuthUserFile /etc/apache2/dav_svn.passwd
Require valid-user
</Location>
Run Code Online (Sandbox Code Playgroud)
我试图改变AuthUserFile /etc/apache2/dav_svn.passwd与AuthUserFile /etc/shadow没有成功.这使服务器响应错误500内部服务器错误.这是合乎逻辑的,为什么Web服务应该有权访问系统身份验证文件?
非常感谢提前!
Ale*_*ias 20
好!我做的!我觉得找到答案很难!
我们必须告诉Apache使用"外部身份验证提供程序",Apache不会检查身份验证,但会将任务委派给外部身份验证器,在这种情况下,是奇妙的pwauth.
所以我做的工作是:
为Apache2和pwauth安装Mod_Auth_External模块
sudo apt-get install libapache2-mod-authnz-external pwauth
Run Code Online (Sandbox Code Playgroud)为Apache启用了新模块:sudo a2enmod authnz_external在终端中.
配置我apache.conf(或您可能有httpd.conf)添加外部身份验证器(基于本文):
AddExternalAuth pwauth /usr/local/libexec/pwauth
SetExternalAuthMethod pwauth pipe
Run Code Online (Sandbox Code Playgroud)编辑我/etc/apache2/mods-available/dav_svn.conf设置新的外部身份验证提供程序:
...
AuthType Basic
AuthName "Subversion Repository"
AuthBasicProvider external
AuthExternal pwauth
Require valid-user
...
Run Code Online (Sandbox Code Playgroud)经过测试和工作正常!
| 归档时间: |
|
| 查看次数: |
13022 次 |
| 最近记录: |