20

我在 Windows 中使用 CollabNet SVN Edge 作为我的存储库服务器,无论如何我弄乱了这个 SVN 的用户帐户,包括根用户帐户。请问如何恢复这个SVN的管理员账号?

4

4 回答 4

58

如果您正在寻找一个选项来重置您忘记的管理员密码,那么在不删除数据库的情况下重置它的唯一方法是直接编辑它(这很容易)。

  1. 在 Windows 上停止 Subversion Edge 服务或在 Linux/Solaris 上运行 $ bin/csvn stop 命令
  2. 找到您的安装目录(例如,c:\csvn)。这将包含一个名为 data 的文件夹,其中包含一个名为“csvn-production-hsqldb.script”的文件。
  3. 在文本编辑器中打开此文件。搜索“'admin'”(带单引号)——您应该会找到如下所示的一行:

    INSERT INTO USER VALUES(1,2,'admin user','admin@example.com',TRUE,
        '78989asdef7898abde4252aedcb4352','Super Administrator','admin')
    
  4. 将长加密密码字段(“789 ...”)替换为:21232f297a57a5a743894a0e4a801fc3

  5. 保存并重新启动 Subversion Edge 服务。

    用户名:admin 密码:admin

应该在那之后工作。

于 2012-04-09T19:22:41.683 回答
8

2017 年,哈希字符串为

INSERT INTO USER VALUES(1,2,'$2a$13$7SoSK1AUMK.Nf9NVlfSyr.OfRrYP8lyH/rOBThvBm68r5wO/A/d22',TRUE,'admin','admin@example.com','admin user','Super Administrator')

那是管理员/管理员

于 2017-07-18T07:31:44.130 回答
1

CollabNet Edge 使用 Apache httpd 为 Subversion 存储库提供服务。我没有安装它,所以我不能 100% 确定东西存储在哪里,但是标准的Apache Httpd 文档可以帮助你。另请参阅在线 Subversion 手册最重要的是仔细查看第 6 章中的Apache httpd 服务器配置。这些可以帮助阐明 Apache httpd 和 Subversion 是如何一起设置和配置的。一切基本上都是 Apache httpd 和您的存储库的前端。我将从配置 Apache 部分的 Subversion 在线手册的第 6 章开始。

切入正题:看看你的系统上是否有一个名为htpasswd的命令。此命令允许您为 Apache 生成密码。您可以使用此命令将加密密码替换为您知道的不同密码。制作一个备份副本,svn_auth_file看看是否可以htpasswd将密码更改为您知道的密码。

记住在弄乱它之前备份每个文件,并在 Subversion 在线手册中阅读有关如何配置 Apache 的信息。查看您的 Apache httpd 配置文件并了解所有内容是如何组合在一起的。然后,尝试使用htpasswd重置您的管理员密码。

于 2012-04-09T17:16:43.087 回答
0
  1. 如果您从 Docker 开始 - 找到您的 svn-data 文件夹。/srv/svn-data 在主机上
  2. 查找文件夹 Conf
  3. 查找 svn_auth_file
  4. 它看起来像 admin:pass_hash。全部更改:更改为 21232f297a57a5a743894a0e4a801fc3
  5. 使用管理员登录:admin
于 2020-09-20T19:52:43.277 回答