TortoiseSVN无法进行身份验证

时间:2012-08-07 13:40:52

标签: apache svn authentication tortoisesvn sasl

在我之前的问题,TortoiseSVN Can't Connect解决后,我遇到了一个新问题。 在托管我的svn存储库的linux服务器上,在存储库的目录中,有一个conf/svnserve.conf文件。在这个文件中,我有选项:

anon-access = none | read | write

最初,此行已注释掉,默认值必须为read。 当然,我想设置anon-access = none,我想要auth-access = write(这是默认设置)。

但是当我设置anon-access = none时,我尝试使用 TortoiseSVN存储库浏览器进行浏览 使用网址svn://host:port/repositoryname,我收到错误:

  

无法连接到URL上的存储库   'svn:// host:port / repositoryname'不允许访问此存储库

如果可能的话,我想在没有ssh的情况下成功进行身份验证,因为我收集的ssh有更多移动部件,可能会慢一些。

服务器 CloudLinux Server版本5.8

svn服务器信息如下。到目前为止我只尝试过svn协议。

  

svn,版本1.6.17(r1128011)编译于2012年7月26日,03:59:19

     

版权所有(C)2000-2009 CollabNet。 Subversion是开源软件,   请参阅http://subversion.apache.org/此产品包含软件   由CollabNet开发(http://www.Collab.Net/)。

     

以下存储库访问(RA)模块可用:

     
      
  • ra_neon:使用Neon通过WebDAV协议访问存储库的模块。      
        
    • 处理'http'方案
    •   
  •   
  • ra_svn:使用svn网络协议访问存储库的模块。      
        
    • 使用Cyrus SASL身份验证
    •   
    • 处理'svn'方案
    •   
  •   
  • ra_local:用于访问本地磁盘上的存储库的模块。      
        
    • 处理'档案'方案
    •   
  •   
  • ra_serf:使用serf通过WebDAV协议访问存储库的模块。      
        
    • 处理'http'方案
    •   
    • 处理'https'计划
    •   
  •   

我希望这是一个很好的问题,因为这是与Windows连接到svn的“开箱即用”行为,当有人将svn添加到共享主机帐户时,这可能很常见。

谢谢!

1 个答案:

答案 0 :(得分:3)

在svnserve.conf文件中设置以下行:

 19 anon-access = none
 20 auth-access = write
    [...]
 27 password-db = passwd
    [...]
 39 realm = Name-of-your-repository
 46 force-username-case = lower

行号是近似值。

realm应该等于您的存储库的名称。它可以是任何东西。 password-db是谁有权使用存储库。默认情况下,该行是NOPed。

接下来,您将编辑位于同一目录中的passwd文件。格式非常简单:

 <userName> = <password>

有两个NOPed条目向您展示它是如何完成的。