Both subversion and subclipse cache usernames and passwords. Sometimes it is necessary to manually change the authentication information, e.g. to clear the password after it has changed, or occasionally, to update the username.
Anyone that uses subclipse (the subversion client for eclipse) that has needed to change the username or password for a stored repository, knows that there is no obvious way to do this. Luckily, I ran across this post. Unfortunately, it left some important details out.
If subclipse is setup to use JavaHL (which it is by default: check in Preferences > Team > SVN > SVN interface), then the passwords are stored in the same location as if the command-line svn tool was used. For unix-based systems (or using the command-line tool under cygwin), this is in ~/.subversion/auth/svn.simple. On windows it is in c:\Documents and Settings\[username]\Application Data\subversion\auth\svn.simple. It looks like there is one file per repository in this directory (the filename is a long hexadecimal number). This file contains your username and password.
On the other hand, if subclipse is configured to use the JavaSVN adapter, the .keyring file mentioned in the post appears to be located in the eclipse directory (not the workspace, the actually directory where the eclipse executable is found) under configuration/org.eclipse.core.runtime/.keyring. This is a binary file and hence must be deleted.
A few complaints: (1) I don’t like the fact my password is stored plaintext in a location where others frequently have at least read access to (this is especially true in Windows) (2) if the keyring is stored in the Eclipse directory that means all users share the same authentication information. That means someone else on the computer could access my subversion repositories as me!
This seems like a huge security hole.
keywords: clear delete remove subversion subclipse password authentication information
In TortoiseSVN in the windows interface, there is a way to clear all of the authentication data. Although it can be annoying to re-enter all of your username and passwords, this will clear any authentication that has been saved previously and is now not helpful. In TortoiseSVN 1.3.3, this option is in the settings under the general heading. In 1.4.1, it is in the saved data heading.
The password is only stored in plain text on Unix operating systems. On Windows it is encrypted using the OS encryption facilities and on OS X it is stored in your key ring — as of 1.4.
We know this is an area to improve in Subclipse. We have asked the Subversion developers to create an API we could call to manage the cache. The problem for Subclipse is that this data is owned by Subversion (JavaHL) or SVNKit. So we need an API to manipulate it and one does not currently exist.
hey mark………..
there’s no file under %APPDATA%\Subversion\auth ni my system……..
.More over whenever i’m tryng to delete that .keyring file from the root of the configuration folder it comes back automatically aftr 5-10 seconds…….
Pleaase reply soon…………..m stuck wid it……………
If you have multiple users sharing an Eclipse installation you should look at the command line options that are available to you. For example the -configuration switch can cause the Eclipse configuration to be stored in the user’s HOME folder. Likewise, there is a -keyring switch and several others.
Thanks for the additional information, Mark. I’m not sure why my passwords were in plaintext, then–maybe from my command-line usage with cygwin.
I’m now interested in looking into those command-line parameters. Now that I’ve upgraded to Vista, I actually had to edit the config.ini file just to get Eclipse to start and I now save all configuration data in my home directory.
Awesome. You saved my life
Pingback: Riopro Blog - » Apagando suas senhas do Subclipse
what to tell now,
Thank you very much.
In Windows it appears that they are stored in plain text, but there must be some sort of hash of the password in the unprintable characters because when I changed them, it still asked me for my password when I next authenticated.
Was about to pull some hair out with the constant password entry boxes…especially when bulk updating 8 projects.
Thanks for locating that .keyring file
You’re a life saver!
thanks for your tip, worked fine.
that’s great information u kept. Thak you very much.
You just saved my day
Thank you very much for this information.
Thanks a lot Robbie,I was finding for this answer from a decade.
Thanks Robble..
Same problem affected me. I solved It
Hi all!
I am connected with subeclipse with one user and pwd.
I don´t know how I can change user and pwd for connecting?
I try to disconnect all my solutions and to connect again, but I can´t.
Could someone help me?
for a shared eclipse installation that folder is located at
.eclipse//configuration/org.eclipse.core.runtime
So every user has its own .keyring
Thanks for the info
I would wish that eclipse would give me an option to save password in memory as long as eclipse is open, and then lose it when I close eclipse
Lot of places there is a security policy NOT to save passwords
Where(the location) exactly the username and password for svn repository is saved in windows xp. As I am checking out the projects with the help of eclipse-galileo.
this article help me alot
thank you very much!
Finally I can clear my subclipse password..
Thank you very much
Thank you very much for all comments
I done it
Thank you so much
Thanks for helping out, superb information .
Thank you so much. I deleted the .keyring file and that solved my lingering problem with svn in eclipse.
The eclipse .keyring file gets generated every time i restart the IDE – still with the old username/password combination.
But by deleting the subversion authentication file it’s at least possible to change the stored password when using the CLI
oh i forgot: Thanks a lot for that information
Thank you so much
Under Windows 7 the file to remove lives in:
C:\Users\username\AppData\Roaming\Subversion\auth\svn.simple
Thanks for the tip!
Thanks a lot.
I was having a real hard time in finding this directory in Windows 7 OS until I saw your post
Pingback: Subversion: How to clear stored password in Win 7 | Phil Jeffes' Blog
How can the clearing and retrieving the saved username be done using subclipse API?