如何在SVN中添加用户?

如何在SVN中添加用户?

更新#3:我想我找到了。
/etc/httpd/conf.d/subversion.conf

<Location /repos>
        DAV svn
        SVNPath /var/www/svn/repos
        AuthType Basic
        AuthName "Subversion repos"
        AuthUserFile /etc/svn-auth-conf
        Require valid-user
</Location>

svn-auth-conf 的格式为

user1:$apr1$randome letters ... $random letters and numbers

我感觉我使用了一些命令行工具来添加用户,但我不记得是什么了。

更新 #2:找到 http.conf 给出这些结果

/usr/share/logwatch/default.conf/logfiles/http.conf
/usr/share/logwatch/default.conf/services/http.conf

我在其中没有看到任何与颠覆有关的内容。如果有帮助的话,我可以在这里发布文件。

原问题:

几年前,我安装并设置了 subversion。我不记得我是如何添加用户的。我现在需要添加另一个,但是当我检查该passwd文件时,没有定义用户,svnserve.conf文件中也没有设置任何内容——两者都注释掉了所有内容。这是我能找到通过谷歌添加用户的唯一方法。所以我尝试了一下:

密码

user1 = password1
user2 = password2

svnserve.conf

anon-access = none
auth-access = write
pasword-db = passwd
authz-db - authz
realm = repos

但我仍然只能使用 访问它user1,即使user1不是 linux 服务器上的用户。是否有其他方法来添加用户或者我的配置有问题?

更新:

我已将以下行添加到我的 svnserve.conf 文件中

authz-db = authz

然后我的 authz 文件看起来像这样

authz [组] devs = user1,user2

[repos:/]
devs = rw

还是不行。 passwd 中 user1 的密码与我用于登录的密码不同。所以我认为颠覆根本没有使用它来进行身份验证。特别是因为该文件之前是空的,但我仍然能够登录。有什么方法可以确保它使用 svnserve、passwd、authz 文件进行身份验证?某处还有另一个配置文件吗?

答案1

Subversion 身份验证通常有两个部分。第一个是某种密码存储库。第二个是访问控制列表。密码列表用于验证用户身份并检查其密码,但您还必须设置哪些用户有权访问哪些资源。

有多种密码存储库类型。我不太熟悉密码类型,我使用密码使用与 apache 用于用户身份验证相同的用户/密码文件的类型。我使用htpasswd .htpasswd username.看起来您可能已经根据您的密码类型正确完成了此步骤。

第二部分是ACL。 Subversion 应该有一个名为某处的文件,access其中包含每个存储库的部分。您需要在要访问的存储库下添加一行,以username = rw授予该用户对该存储库的读/写访问权限。

答案2

SVN服务器配置(主要)由三个文件组成:

  • 授权
  • 密码
  • svnserve.conf 这是主文件(authz-db = authz)

因此,您只需向我们提供两个配置文件,请检查 authz 文件是否包含:

#[the_name_of_repository:/path_in_that_repository]
[test:/]
user1 = rw
user2 = rw

对于该项目测试您想要授予访问权限

答案3

## Create testuser ##
htpasswd -m /etc/svn-auth-users testuser

New password:

Re-type new password:

Adding password for user testuser2

注意:使用与文件中使用的完全相同的文件名和路径名subversion.conf。本例使用/etc/svn-auth-users文件。

答案4

你可以使用命令,

sudo htpasswd -cm /etc/apache2/dav_svn.passwd XXXXX
  • XXXXX 是用户名,然后会要求输入密码

仅当您使用 apache 设置 svn 时才会出现这种情况,apache 不会读取 svn conf 文件夹用户名密码 conf 文件

相关内容