Connecting to a SVN Repository Fails with svn: E170001: Negotiate authentication failed: No valid credentials provided
問題
Connection to SVN repository fails.
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'
原因
The bundled SVNKit used by Fisheye needs Basic Authentication to be enabled in SVN Server.
解決状況
1) If feasible, 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>
2) If you are not able to switch to basic auth you will need to use a Native SVN Client - see the following for more details: https://confluence.atlassian.com/fishkb/fisheye-and-ntlm-1189783826.html