我不确定什么是最好的,保持 subversion 用户和密码与 linux 用户和密码同步,还是只是让 linux 以某种方式提供 subversion 身份验证服务。
我更愿意只维护 Linux 用户,因为我发现在 ubuntu 上添加和删除用户很容易。我想发出命令“sudo adduser developer”,然后“developer”就可以立即访问 subversion 存储库。
目前,我必须首先创建一个 Linux 用户,然后使用以下命令创建 Subversion 用户:
sudo htpasswd -m /var/lib/svn/mainrepo/conf/htpasswd 开发人员
有没有更好的办法?
答案1
您需要让 apache 根据 PAM 堆栈进行身份验证,就像操作系统一样。
调查mod_auth_pam
另外,也许应该将其移至 serverfault?
答案2
您可以使用这个 serverfault 答案(也阅读评论!),但这有很多不便之处。
您也可以简单地创建一个脚本,通过 adduser 或 passwd 添加或更改用户密码,并立即设置或更改 svn 密码。这可能是在这种情况下最方便的方法,因为开发人员显然没有服务器的 shell 访问权限,因此无法自己更改密码。
据我所知,Subversion 没有可用的 PAM(Linux 身份验证框架)集成,但 Apache 有,如果您使用 SVN 而不是 WebDAV,则可以使用它们。这是 mod_dav 和 mod_dav_svn配置文档, 和这是一个能够使用 PAM 验证客户端的模块。