WebSVN - 存储库中路径的身份验证

Posted

技术标签:

【中文标题】WebSVN - 存储库中路径的身份验证【英文标题】:WebSVN - Authentication for paths in the repository 【发布时间】:2010-11-25 18:44:11 【问题描述】:

我需要简单的“直截了​​当”的教程或简洁的示例,说明如何使用 WebSVN 从单个 Subversion 存储库中实现路径授权(签出目录)。

假设存储库是 /svn/repos/r_project 此存储库的两个结帐(路径)是 /svn/repos/path1 和 /svn/repos/path2 ... 我想用不同的用户名/密码保护每个路径(目录)。

Subversion 和 WebSVN 安装在 Unix Apache (redhat) 上。我已经可以在 WebSVN 存储库首页中看到两条路径 - 没有任何保护,这工作正常。

我知道如何使用 .htpasswd 保护单个 Web 索引页面,但我尝试通过 WebSVN 页面保护存储库中单个路径的任何操作都失败了。

发送

[编辑 nov26]

最新情况说明: 我拥有的路径:

Home path in unix: '/var/www/'
Path of WebSVN: '/var/www/websvn2'
Path to repository: '/svn/repos'
Created repository is '/svn/repos/r_project') // so r_project is the repository name 
Two checkout directories of that repository:'/svn/repos/path1' and '/svn/repos/path2'

httpd.conf 我有 SVN 和 WEBSVN 的位置(我确实有必要的模块):

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

<Location /websvn210/>
    Options FollowSymLinks
    AuthType Basic
    AuthName "Subversion Repository"
    Require valid-user
    AuthUserFile /etc/svn-auth-file
</Location>

目前,“svn-auth-file”包含一个用户名的密码。放入'/etc'目录。

在 WebSVN 的 config.php 文件中,我有:

$config->parentPath("/var/www/svn/repos");  
$config->useAuthenticationFile('/etc/svn-auth-file'); // Global access file

我可以在浏览器中将结帐目录“path1”和“path2”视为带有文件的常规索引页面(例如:“http://mydomain/svn/repos/path1”)。但是,当我在浏览器中输入“http://mydomain/websvn210”时,我只能获得登录(ok)而不是 WebSVN 的空主页——也就是说,没有存储库或结帐路径!

这是第一个问题:空白页面。 其次,将为每个路径设置不同的登录名。 注意:这些路径(签出)仅用于读取或下载(未从 Subversion 提交)。

谢谢。

【问题讨论】:

【参考方案1】:

您可能正在寻找“authz”。这是众多可用的tutorials 之一。

编辑 我认为您将两种不属于一起的事物混合在一起。访问 subversion 存储库的一种方法是通过 WebDAV,这似乎有效。另一方面,WebSVN 用于存储库浏览。您将无法提交对 WebSVN URL 的更改。

您的“SVNParentPath”应该指向存储库而不是 WebSVN 目录。

SVNParentPath /svn/repos

【讨论】:

谢谢。我哈哈 Subversion 已安装并且工作正常。我的问题是 WebSVN。我已按照给出的所有说明进行操作,但在 websvn 页面上看不到存储库(和路径)。 我知道......这不是一个非常有趣的问题,而且 *** 可能不是揭露此类问题的最佳场所。我会尽量找一个专门讨论subversion和websvn的论坛。谢谢。 @volvox:发布您的配置文件。您的评论与您的​​问题相反。 websvn 是否与您的配置一起使用,您只需要在顶部添加一个身份验证层。 OK - 我将使用我拥有的最新配置文件和问题来编辑我的问题。发送。 @volvox:将serverfault.com/questions/13853/… 视为模板。

以上是关于WebSVN - 存储库中路径的身份验证的主要内容,如果未能解决你的问题,请参考以下文章

如何从经过身份验证的私有 Artifactory PyPI 存储库中提取 Python 包?

使用 http 身份验证下载私有 BitBucket 存储库 zip 文件

每次从 github 拉取而无需身份验证

添加基本​​身份验证来表达rest api

我可以在尝试连接到未经身份验证的网络路径时显示 Windows 身份验证对话框吗

berkeleydbje 设置身份验证