代码之家  ›  专栏  ›  技术社区  ›  Amadiere

通过CruiseControl.net和Windows身份验证访问SVN repo

  •  1
  • Amadiere  · 技术社区  · 15 年前

    对于stackoverflow还是serverfault,这有点含糊不清。我认为开发人员有同样多的机会来解决这个问题,所以我选择了这里。

    我有两台服务器:

    • SvnServer。这是一个Windows2003服务器盒,它承载着VisualVN,它工作正常,允许通过Windows身份验证进行身份验证。
    • CCNETServer。这是一个Windows 2008服务器盒,并托管CruiseControl.net。

    我想在它们之间建立一个链接,因此在我的ccnetserver项目定义中,我有以下代码:

    <sourcecontrol type="svn">
      <trunkUrl>svn://appserv1/aspnet/regBook/trunk</trunkUrl>
      <workingDirectory>C:\Program Files\CruiseControl.NET\Website\Registrars\Source</workingDirectory>
      <username>SVNServer\Username</username>
      <password>Password</password>
    </sourcecontrol>
    

    但是,这似乎不起作用,我经常收到构建错误消息“failing tasks:svn:checkformodifications”,大概是因为它没有针对服务器进行身份验证。 当你看得更深一点时,它说:“无法连接到主机‘svnserver’:无法建立连接,因为目标计算机主动拒绝了它。”

    我无法创建域帐户,但我可以修改两台计算机上的帐户。在尝试为我的SVN服务器保留Windows身份验证时,我如何才能绕过这个问题?我应该在哪里查找更多信息?

    2 回复  |  直到 14 年前
        1
  •  2
  •   Andy Shellam    15 年前

    您的线索在错误消息中:“can't connect to host'svnserver':无法建立连接,因为目标计算机主动拒绝了它。”您正在尝试访问一个没有任何内容的端口。

    VisualSVN服务器在端口3690上不使用svn://——默认情况下,它在端口8443上使用https。因此,请尝试将URL更改为“ https://SVNServer:8443/ …”而不是svn://svnserver。

        2
  •  2
  •   Stefan Egli    15 年前

    使用此配置,您需要配置visuasvn服务器以允许基本身份验证和集成身份验证。

    我不确定这是否是使其工作的唯一方法,或者是否可以对cc.net使用NTLM身份验证(在这种情况下,您不需要指定用户/密码)。