SVN的原因和解决方案是什么:无法对服务器进行身份验证:拒绝基本挑战?

时间:2012-05-03 23:20:43

标签: svn authentication version-control basic-authentication

如果你在网上搜索,你会看到这个问题很多,但没有明确的答案。这是我的具体案例。

我在Mac上使用Versions SVN客户端但是在使用命令行时我遇到了同样的问题。我有个人回购凭证给别人的回购,它正在我的一台机器上工作,我在6个月前设置它。

我将我的.ssh文件夹从我的用户目录复制到另一台计算机,在该计算机上安装了版本,并通过登录凭据设置,只是它失败并显示以下消息:

  

授权失败:无法向服务器进行身份验证:已拒绝基本   挑战

回购的网址是使用https,但我删除了“回复”。并尝试了非安全,同样的问题。然后我从我的其他计算机上删除了我的.ssh文件夹,同样的问题。其他人说这个错误与SVN试图使用基本身份验证(http)和失败有关。这对我没什么帮助,因为我不知道如何解决它。我的登录凭据很好,但是这个错误消息可能是我处理过的描述性最差和写得最差的消息之一。我怎么解决这个问题?

4 个答案:

答案 0 :(得分:20)

 authorization failed: Could not authenticate to server: rejected Basic
 challenge

您获得的错误意味着SVN服务器(实际上是Apache HTTP Server)因拒绝凭据而拒绝对您进行身份验证。以下是解决错误的步骤:

  • 您是否收到密码提示?您是否连续3次获得密码提示,然后看到此错误?

    如果您这样做:第一个故障排除步骤是仔细检查输入的用户名和密码是否正确。用户名可以区分大小写!

    第二个故障排除步骤不像前一个那样明显;更改AD帐户的密码后,您可能会遇到此问题。当密码包含非ASCII符号(例如£,ü,ä等)时,基本身份验证失败。简而言之,Basic auth不支持密码中的非ASCII字符。

  • 您没有收到密码提示,只是因为错误authorization failed: Could not authenticate to server: rejected Basic challenge 而失败。

    尝试验证强制您的凭据是有意义的,例如使用命令行:

    svn info --username USERNAME --password PASSWORD --no-auth-cache https://server/svn/repository/

      

    - 用户名ARG:指定用户名ARG

         

    - 密码ARG:指定密码ARG

         

    - no-auth-cache:不缓存身份验证令牌

    如果您可以使用此命令行成功进行身份验证,则应清除缓存的凭据。有关详细信息,请参阅SVNBook | Client Credentials。但是,某些GUI客户端允许您通过几次单击清除缓存。

答案 1 :(得分:2)

在我的情况下,这是gnome密钥环的一个问题。我完全删除了(rm中所有文件都在..gnome2 / keyrings / [对于Debian])

答案 2 :(得分:0)

我注意到的一件事是,如果我在从svn导入的SVN工作复制格式弹出窗口中选择1.6版本,那么它不允许我签出并抛出上面的错误。如果我选择1.7版本结帐工作正常。

我正在使用IntelijIdea 13.1.5

答案 3 :(得分:-3)

最好只使用SVN将主干复制到标签

svn cp http://plugins.svn.wordpress.org/xxx/trunk http://plugins.svn.wordpress.org/xxx/tags/1.0 -m "tagging 1.0"

如果你遇到git svn标签问题,这应该可以正常工作。