SVN Authentication Issues

If multiple repositories have been defined in Fisheye for the same SVN Server and those repositories use different credentials, Fisheye may not use the correct credentials.

Fisheye does not control directly when authentication information is used to access Subversion repositories. It delegates this operation to the JavaHL layer in use. JavaHL will then ask Fisheye to supply credentials when required, using a callback. The default JavaHL layer shipped with Fisheye, SVNKit, can cache credentials at the server level rather than at the repository level.

There are different approaches to solving this issue:

Specify the username as part of the URL when defining your repository location (Recommended)

When using Fisheye/Crucible 2.10, or later, we recommend that you simply include the username in the URL when defining the repository in Fisheye. For example, use http://username@host.com.

Use the native JavaHL implementation

Fisheye can be configured to use the native JavaHL implementation, which will correctly apply the appropriate credentials.

Use the same authentication for the SVN server

The simplest solution is to have the same credentials for accessing the Subversion Server.

Use mock hostnames in the hosts file

Alternatively, SVNKit can be tricked into thinking that different servers are being used. For each connection to a repository a hostname in the hosts file can be defined.
All these entries then point to the same IP address of the SVN Server, but to SVNKit they look like different servers, thus bypassing the problem.

Example hosts entries (replace the IP address with the address of the SVN Server):

123.45.6.78  account1
123.45.6.78  account2

Replace these new server names in the SVN URLs:

http://account1/svn/project-a/
http://account2/svn/project-b/
Last modified on Oct 25, 2018

Was this helpful?

Yes
No
Provide feedback about this article
Powered by Confluence and Scroll Viewport.