承诺VisualSVN失败auth被拒绝

时间:2012-12-03 05:58:05

标签: svn authentication authorization basic-authentication visualsvn-server

我无法提交由VisualSVN服务器支持的subversion存储库。 我可以签出代码并更新,因此我使用的用户名和密码是正确的。 但是,当我尝试进行提交时,我会获得一致的授权失败。 我尝试过非交互式,交互式,命令行,svnX,版本,都具有相同的结果。

svn: Commit failed (details follow):
svn: MKACTIVITY of 'xxxxxx/4a1e3c7e-8efd-47f0-abf6-80239ee625c8': authorization failed: Could not authenticate to server: rejected Basic challenge

存储库显然是在https下运行。

我多年来一直在命令行中使用其他SVN存储库,从来没有遇到过这个问题。我已经阅读了很多关于这个问题的帖子,但他们都认为subversion无效的本地存储认证问题,我清除了那些缓存,但没有。

特别是自结账和更新工作以来,我很难过。 我还可以使用相同的凭据登录运行VisualSVN服务器的Windows服务器。

VisualSVN服务器版本为2.5.1 svn版本1.6.17(r1128011)在OSX上运行

非常感谢任何帮助。

4 个答案:

答案 0 :(得分:1)

我一直在使用VisualSVN Server和TortoiseSVN客户端一段时间,并且在尝试从新客户端安装中访问存储库时,我多次遇到身份验证错误。

看了一下事件日志(VisualSVN Server登录到Windows事件日志)后,我注意到错误消息说没有找到用户。但是我知道用户存在,并且我已将服务器配置为使用Subversion身份验证。

我发现 Subversion身份验证使用区分大小写的用户名。 Subversion用户以大写字母开头,我尝试在客户端上只使用小写字母。这可能是我每次遇到这个问题的原因。

答案 1 :(得分:0)

  1. 如果您的VisualSVN服务器使用单独的用户文件进行身份验证,则登录Windows无意义(与SVN登录无关)
  2. 您必须使用CLI-client并在提交时使用强制授权,即使用

    --username ARG : specify a username ARG

    --password ARG : specify a password ARG

    --no-auth-cache : do not cache authentication tokens

    命令中的

    (写入将在事务中使用,保证是正确的登录/传递)

  3. 如果即使这个提交失败并且“授权失败”那么它只能意味着一个:你在这个存储库中拥有只读访问权限(至少受到存储库树的提交部分的影响)

答案 2 :(得分:0)

您不应该对错误措辞感到困惑。虽然错误表明的第一件事是authorization failed这里真实的信息部分是 Could not authenticate to server: rejected Basic challenge

如果不查看VisualSVN Server log BTW,这种行为很难排除故障。

当您看到错误被拒绝的基本质询时,按照简单的检查清单排除问题是有意义的:

  1. [CPT。明显模式ON] 检查密码是否有效。连续3次输入错误密码后,您可以看到错误

  2. 仔细检查密码是否包含非ASCII字符(例如£üä等) 。您可以使用非ASCII符号的密码登录Windows,但基本身份验证类型不支持非ASCII字符。您可以通过切换到Integrated Windows Authentication解决问题,但这是另一个问题。

  3. 如果上述步骤都不能帮助您解决更深层次的问题:

    1. Check VisualSVN Server log。记录在不成功的身份验证尝试上的内容是什么?

    2. 检查Windows安全日志。您可以在那里看到可以澄清行为的相关事件。例如。您可以看到由Windows Server 2003 bug引起的错误0xC0000064。

答案 3 :(得分:0)

在我的案例中.svn文件夹在Caps&在repo浏览器中给出的路径很小..