从本地caching中恢复SVN密码
有没有办法从本地caching恢复密码? 密码必须存储在某个地方,因为我可以运行
svn co http://my.svn.server/foo
但我已经失去了自己的密码。 我是否必须重置它,或者有可能(以及如何)find并解密密码? 我主要在Windows上使用CLI SVN,有时切换到TortoiseSVN或IntelliJ Idea SVN。
在Windows上,Subversion将authentication数据存储在%APPDATA%\Subversion\auth
。 然而密码被encryption存储,而不是以纯文本。
您可以解密这些文件,但仅限于以与保存身份validation数据的用户相同的身份loginWindows。
有人甚至写了一个工具来解密这些。 从来没有尝试过自己的工具,所以我不知道它的工作效果如何,不过你可能还是想尝试一下:
http://www.leapbeyond.com/ric/TSvnPD/
更新:在TortoiseSVN 1.9和更高版本中,你可以不用任何额外的工具:
Settings Dialog
– > Saved Data
,然后点击“ Authentication Data
”文本右侧的“ Clear...
”button。 popup一个新的对话框,显示所有存储的validation数据,您可以在其中select要清除的数据。 按住Shift
和Ctrl
键不放,然后double click
列表。 在显示密码的对话框中显示一个新列。
在~/.subversion/auth/svn.simple/
你应该find一个长hex名字的文件。 密码以明文forms存在。
如果有多个文件,则需要find一个引用服务器的密码。
对于那些对OS X解决scheme感兴趣的应用程序,如Intelli-J,OSX存储授权:
- 点击CMD + SPACE
- 键入“钥匙串”
- 打开钥匙串访问
- 在左侧的“钥匙链”下,select“login”
- 在右侧的“类别”下,select“所有项目”
- 在search框的右上angular,input主机URL(例如svn.mycompany.com)
- 如果您select让您的Mac记住您的login凭据,您的钥匙串项目将显示。
- 双击该项目并选中popup对话框底部的“显示密码”checkbox。 您将不得不input您的Maclogin名以显示密码。
比尝试解密密码要容易得多:-)
Ubuntu(12.04)中的SVN密码位于:
~/.subversion/auth/svn.simple/
然而,在更新的版本中,它们是encryption的,就像前面提到的那样。 要findgnome-keyring密码,我build议你使用' gkeyring '程序。
在Ubuntu上安装它 – 添加存储库:
sudo add-apt-repository ppa:kampka/ppa sudo apt-get update
安装它:
sudo apt-get install gkeyring
并运行如下:
gkeyring --id 15 --output=name,secret
尝试不同的关键ID来find匹配你正在寻找的对。 感谢kampka的软。
只要使用这个解密器来解密你的本地caching的用户名和密码。
默认情况下,TortoiseSVN将caching的凭据存储在%APPDATA%\ Subversion \ auth \ svn.simple目录中的文件中。 密码使用Windows数据保护API进行encryption,密钥与您的用户帐户绑定。 该工具读取文件并使用API解密您的密码
svn密码解密器