SVN加密密码存储

tre*_*nik 109 unix svn encryption passwords

我在Ubuntu机器上安装了SVN,我无法理解某些东西.

每当我从终端结账时,我都会收到有关保存未加密密码的错误消息:

-----------------------------------------------------------------------
ATTENTION!  Your password for authentication realm:

   <[...]> Subversion Repository

can only be stored to disk
unencrypted!  You are advised to
configure your system so that
Subversion can store passwords
encrypted, if possible.  See the
documentation for details.

You can avoid future appearances of
this warning by setting the value of
the 'store-plaintext-passwords' option
to either 'yes' or 'no' in
'/home/[...]/.subversion/servers'.
-----------------------------------------------------------------------
Run Code Online (Sandbox Code Playgroud)

我把它弄了一下,但我找不到任何有用的东西.我发现一个主题,它说这是一个客户端问题,而不是服务器问题,但我仍然不相信.

它说"配置你的系统"; 究竟是什么意思呢?服务器还是客户端?如果我是服务器,我能做些什么吗?除了隐藏警告(就像它说的那样)......

谢谢!

fri*_*sco 44

这是一个客户问题.它警告您,用于不同服务器的凭据以纯文本格式存储.您可以隐藏该警告或使用加密存储来缓存密码.

请参阅:http://blogs.collab.net/subversion/2009/07/subversion-16-security-improvements/

  • @sims Hashing如果你想验证密码的正确性是好的.客户端即将向服务器发送密码,因此散列是不够的.您必须以双向方式存储它. (17认同)
  • 加密存储是GNOME Keyring或Kwallet,但由于我没有在我的服务器上使用任何桌面界面,我猜测加密是不可能的.对? (14认同)
  • 根据http://ubuntuforums.org/showthread.php?t=1348567,您可以在不重新编译的情况下获得它.只需将其设置为〜/ .subversion/config [auth] password-stores = gnome-keyring (6认同)
  • 我不敢相信svn没有提供像htpasswd或类似的哈希pw. (5认同)
  • 在第一个注释中,您可以看到有一个选项可以使用它命令行,不知道它是如何工作但似乎可行. (3认同)
  • 另一方面,我不明白这种关于加密的狂热.如果客户端计算机的根目录想知道您的SVN密码,那么他就可以嗅探它.只有使用自己的计算机才能实现真正的保护.正确设置文件权限就足够了.或者使用其他电脑! (2认同)

小智 6

通过加密密码,由于操作系统文件权限,您将无法实现不可否认性(其他用户可能会使用您的哈希).但是,大多数公司都使用其域密码或某种形式的SSO密码进行颠覆设置.通过加密密码,您至少会掩盖某人访问其他帐户的用户.

我仍然会担心加密强度.如果将subversion密码链接到其他重要帐户,则有人可能会测试加密强度以破解密码.

最好的办法是设置subversion客户端以关闭存储的密码并强制懒惰的Dev每次进行身份验证.

  • 后一项提案是否"最佳"取决于其他因素.如果devs面临繁重的提交/更新过程,开始少用SVN,那么与其他人同步的粒度会变得更粗糙呢?如果他们开始通过陪审团操纵方法将密码存储在其他地方并且不安全地自动执行身份验证过程会怎样? (12认同)