{"id":17663734,"url":"https://github.com/scbizu/svnpanel","last_synced_at":"2025-07-10T18:37:10.925Z","repository":{"id":98091367,"uuid":"81663504","full_name":"scbizu/svnpanel","owner":"scbizu","description":"一个管理SVN用户权限的Web Client","archived":false,"fork":false,"pushed_at":"2017-02-11T16:12:56.000Z","size":138,"stargazers_count":17,"open_issues_count":0,"forks_count":7,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-05-07T21:40:00.675Z","etag":null,"topics":["authz","svn"],"latest_commit_sha":null,"homepage":null,"language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/scbizu.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-02-11T15:58:27.000Z","updated_at":"2023-10-11T09:08:48.000Z","dependencies_parsed_at":"2023-04-14T10:27:08.219Z","dependency_job_id":null,"html_url":"https://github.com/scbizu/svnpanel","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/scbizu/svnpanel","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scbizu%2Fsvnpanel","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scbizu%2Fsvnpanel/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scbizu%2Fsvnpanel/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scbizu%2Fsvnpanel/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/scbizu","download_url":"https://codeload.github.com/scbizu/svnpanel/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scbizu%2Fsvnpanel/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264631330,"owners_count":23640947,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["authz","svn"],"created_at":"2024-10-23T19:08:02.585Z","updated_at":"2025-07-10T18:37:10.901Z","avatar_url":"https://github.com/scbizu.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# svnpanel\n\nA  light auth management tool for svn implement by Golang.\n\n## Arch\n\n### list\n\n\u003e use `svnlook` command ,and implement `svnlook` wrapper functions .\n\n0x00  列出所有svn repo\n\n\u003e Read conf directory and show some useful configurations .\n\n0x01  列出当前repo的一些设置\n\n* SVNROOT/conf/svnserve.conf\n\n  * **是否允许匿名登录**  : 读取`anon-access`的值,如果`anon-access`被注释掉(即`#anon-access=xxx`,svn创建repo时的默认设置。),则被认为开启匿名登录(值不为`none`都被认为是匿名登录);\n\n  * ~~**匿名用户文件读写权限** : 读取`auth-access`的值,如果值为`write`,那么通过验证(已登录)的用户都可以读和写;如果值为`read`,那么匿名的用户则不可以写(不能update到svn服务器)~~(feature deleted because of `anon-access` is always set `none`)\n\n  * **开启用户设置(password)** ： 开启即可进行用户增删改查(即设置`password-db=passwd`)。\n\n  * **开启权限设置(authz)** : 开启即可进行用户组的权限配置(即设置`authz-db=authz`)\n\n* SVNROOT/conf/passwd\n\n  当开启`passwd`后,获取`[users]`字段下内容,`json化`用户名 和 密码 .\n\n* SVNROOT/conf/authz\n\n 当开启`authz`后,读取 ~~`[aliases]`~~,`[groups]`,和 一些repo 目录的权限。\n\n### config\n\n\u003e edit files under `conf` directory and  save to the conf .\n\n0x02 异步修改conf设置\n\n*  修改passwd文件\n\n   处理前端发过来的json(`{\"old\":[\"username\":\"\",\"password\":\"\"],\"new\":[\"username\":\"\",\"password\":\"\"]}`),old用于查询要修改的帐号,new用来替换修改的帐号。\n\n*  修改authz文件(暂不支持aliases)\n\n## APIs\n\n|Router|Method|DataType| Service|\n|---|---|---|---|\n|/config:repo|GET|JSON|查询选中版本库的详细信息|\n|/repos|GET|JSON|查询全部版本库|\n|/edit|PUT|JSON|修改svnserve.conf的字段|\n|/passwd|POST|JSON|修改passwd下的用户名和密码|\n|/newpasswd|POST|JSON|passwd下添加新的用户|\n|/delpasswd|POST|JSON|删除passwd下的某个用户信息|\n|/groups|POST|JSON|修改authz下group字段下的用户组设置|\n|/addgroup|POST|JSON|增加一个用户组|\n|/delgroup|POST|JSON|删除一个用户组|\n|/editauth|POST|JSON|修改一个路径的权限|\n|/delauth|POST|JSON|删除一条权限|\n|/addauth|POST|JSON|增加一条权限|\n\n## How To\n\n配置文件位于根目录下 文件名是 svnadmin.json\n\nkey的生成规则是 `密码?盐?`\n\n盐可以自定义\n\n## preview\n\n![screenshots](./feature.png)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fscbizu%2Fsvnpanel","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fscbizu%2Fsvnpanel","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fscbizu%2Fsvnpanel/lists"}