Connecting to a SVN Repository Fails with svn: E170001: Negotiate authentication failed: No valid credentials provided
Problem
Connection to SVN repository fails.
The following appears in the atlassian-fisheye.log
:
2014-12-25 12:00:00,000 WARN [qtp31304708-128 ection-1379011039211] fisheye SvnRepositoryTester-getServerRootURL - Unable to get Repository Root URL for Repository:https://127.0.0.1/svn/Repository//
2014-12-25 12:00:00,001 ERROR [qtp31304708-128 ection-1379011039211] fisheye SvnRepositoryTester-pingAndValidateAccess - Exception getting FishEye access control
com.cenqua.fisheye.rep.RepositoryClientException: org.tigris.subversion.javahl.ClientException: svn: E170001: Negotiate authentication failed: 'No valid credentials provided'
Cause
The bundled SVNKit used by Fisheye needs Basic Authentication to be enabled in SVN Server.
Resolution
Enable Basic Authentication in SVN Server by following these steps:
Steps provided are to be considered a guideline. Please adapt them to fit your environment. For more information please visit: http://svnbook.red-bean.com/en/1.7/svn.serverconfig.httpd.html .
First, create a password file and grant access to users Alice and Bob:
$ ### First time: use -c to create the file $ ### Use -m to use MD5 encryption of the password, which is more secure $ htpasswd -c -m /etc/svn-auth.htpasswd alice New password: ***** Re-type new password: ***** Adding password for user alice $ htpasswd -m /etc/svn-auth.htpasswd bob New password: ******* Re-type new password: ******* Adding password for user bob
Add some more directives inside the
<Location>
block to tell Apache how to use the password file:<Location /svn> DAV svn SVNParentPath /var/svn # Authentication: Basic AuthName "Subversion repository" AuthType Basic AuthUserFile /etc/svn-auth.htpasswd </Location>