访问存储库时发生SVN授权错误

访问存储库时发生SVN授权错误,svn,windows-7,configuration,Svn,Windows 7,Configuration,这与其说是编程问题,不如说是配置问题。如果有更好的地方发布,请重定向我 当我尝试导入带有TortoiseSVN的项目时,我遇到授权错误。我控制客户端(我的电脑)和SVN存储库(非路由网络上的另一台电脑)。客户端和服务器位于Windows 7上。有一个Active Directory(我无法控制)来验证用户名和密码。我可以登录到客户端和服务器 服务器正在作为Windows服务运行SVN服务。我在服务器上有两个存储库,一个位于c:\repositories\repo1中,它是另一个存储库的镜像。它更

这与其说是编程问题,不如说是配置问题。如果有更好的地方发布,请重定向我

当我尝试导入带有TortoiseSVN的项目时,我遇到授权错误。我控制客户端(我的电脑)和SVN存储库(非路由网络上的另一台电脑)。客户端和服务器位于Windows 7上。有一个Active Directory(我无法控制)来验证用户名和密码。我可以登录到客户端和服务器

服务器正在作为Windows服务运行SVN服务。我在服务器上有两个存储库,一个位于
c:\repositories\repo1
中,它是另一个存储库的镜像。它更新并支持svnsync,工作正常。第二个是
c:\repositories\repo2
,应该是集成测试的测试存储库。我尚未成功写入第二个存储库

我使用URL
svn:///repo2/
作为导入的根目录。当我右键单击我的客户机上的项目文件夹并进入“Tortoise导入”时,我输入了
svn:///repo2/project1
作为URL

在服务器上,我在
conf/svnserve.conf

anon-access = write
auth-access = write
password-db = passwd
authz-db = authz
(我也尝试了
anon access=read
)在passwd中我有用户名和密码。在authz中,我有:

[repository:/repo1]
* = r

[repository:/repo2]
<username>= rw

必须将anon access设置为none。您不希望允许匿名访问。使用您已有的设置,您的服务器将永远不会向您挑战凭据,因此您的访问规则将永远不会得到满足


虽然可以在命令行上提供凭据,但客户端无法将凭据“推送”到服务器。只有当服务器挑战它时,它才会使用这些凭据。

您必须设置anon access=none。您不希望允许匿名访问。使用您已有的设置,您的服务器将永远不会向您挑战凭据,因此您的访问规则将永远不会得到满足


虽然可以在命令行上提供凭据,但客户端无法将凭据“推送”到服务器。只有当服务器挑战它时,它才会使用这些凭据。

您能看到TSVN中的空repo2吗?我担心,对于1个守护进程上的2个repo,您的路径可能会因anon access=write none身份验证无效而损坏performed@Lazy獾:是的,我能看到REP2,它是空的。我发现了一篇关于两个repo和一个守护进程(本例中为服务)的文章,所以它至少工作过一次!;-)我尝试了
anon-access=write
,但仍然无法获得授权。我应该注释掉
auth access
?我在防火墙后面的一个小网络中,所以我可以在没有授权的情况下生活。我注释了
auth access
。TSVN没有要求输入用户名和密码,但我仍然收到一个授权错误。您能看到TSVN的空repo2吗?我担心,对于1个守护进程上的2个repo,您的路径可能会因anon access=write none身份验证无效而损坏performed@Lazy獾:是的,我能看到REP2,它是空的。我发现了一篇关于两个repo和一个守护进程(本例中为服务)的文章,所以它至少工作过一次!;-)我尝试了
anon-access=write
,但仍然无法获得授权。我应该注释掉
auth access
?我在防火墙后面的一个小网络中,所以我可以在没有授权的情况下生活。我注释了
auth access
。TSVN没有要求输入用户名和密码,但我仍然收到一个授权错误。我在
repo2/conf/svnserve.conf
中更改了
anon access=none
。我重新启动了svnserve Windows服务。在客户端PC上,我键入了
svn列表svn:///repo2
。我没有收到授权挑战。我确实收到授权失败错误。您使用SVN服务有什么原因吗?Apache更容易,IMO。您可以安装免费的CollabNet Subversion Edge,它可以为您处理所有这些细节。我注意到authz文件的语法是错误的。这些条目看起来应该像[repos1://]我使用了svnserve,因为它是一个更好、更简单的服务器。我的服务器上有Apache,我可能会试试,因为它不起作用。我也注意到了回购部分的问题。什么是“存储库名称”?我编的什么?我有两个存储库,因此需要
[foo:/repo1/]
[bar:/repo2/]
。我在
repo2/conf/svnserve.conf
中更改了
anon access=none
。我重新启动了svnserve Windows服务。在客户端PC上,我键入了
svn列表svn:///repo2
。我没有收到授权挑战。我确实收到授权失败错误。您使用SVN服务有什么原因吗?Apache更容易,IMO。您可以安装免费的CollabNet Subversion Edge,它可以为您处理所有这些细节。我注意到authz文件的语法是错误的。这些条目看起来应该像[repos1://]我使用了svnserve,因为它是一个更好、更简单的服务器。我的服务器上有Apache,我可能会试试,因为它不起作用。我也注意到了回购部分的问题。什么是“存储库名称”?我编的什么?我有两个存储库,因此需要
[foo:/repo1/]
[bar:/repo2/]
C:\>svn list svn://pc0000/repo2 --username ksnortum --password xxxxxxxxx
svn: Authorization failed