完整SVN版本库建设方案(增加自行修改密码功能)

2024-04-11 18:38

本文主要是介绍完整SVN版本库建设方案(增加自行修改密码功能),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

补丁已经上传,下载地址:http://download.csdn.net/detail/tiwen818/3804490   微笑


1. 引言

1.1.编写目的  

现有svn版本软件在维护上较为麻烦,如创建修改用户账号、权限、所属小组,账号一旦创建之后,就很没有提供给用户自行修改密码的途径,久而久之这些的svn变得不那么安全,人人适用皆知的密码给公司安全保密工作大大折扣。为了解决SVN维护上的种种问题,于是我编写了SVN库建设方案,希望在这些问题上建立一个安全有效措施方案,弥补官方工具的不足。

1.2.目标

一、实现各项目SVN库统一图形界面化管理;

二、加强数据的保密性,提供用户自助修改密码功能;实现密码可自助维护;

1.1.定义

术语

说明

SVN

SVN全称Subversion,是一个自由/开源的版本控制系统。

Apache

Web服务器软件。

VisualSVN

VISUALSVN就是建立在SVN公版基础上的一个服务端软件

 

2. 系统实现

       本次方案采用Visual SVN Server来实现图形化统一管理,好处在于该产品免费,并且很好的和apache进行集成,用户可以通过http登录查看svn库数据;其次,Visual SVN Server已经将SVN维护功能进行了封装,并且提供图形化展现,增强了易用性。最后加上我们自定义的在线修改密码功能,实现用户自行修改自己svn密码。

2.1. 系统安装

官方http://www.visualsvn.com/server/download/下载SVN服务端软件,点击安装。

安装过程中,注意respositories路径是仓库主目录地址,一般要分配一个比较大的磁盘路径,默认使用安全连接https是打钩的,可以去掉,直接使用80端口即可。

 

解压“在线修改密码补丁.rar”,需要修改2地方。

第一个修改点Conf\httpd-custom.conf

将下列红色部分修改成你的VisualSVNServer安装路径。

 

 

<Directory "C:/Program Files/VisualSVN Server/cgi-bin">

    AllowOverride None

    Options all

</Directory>

   

ScriptAlias /cgi-bin/ "C:/Program Files/VisualSVN Server/cgi-bin/"

   

LoadModule alias_module modules/mod_alias.so

LoadModule cgi_module modules/mod_cgi.so

AddHandler cgi-script .cgi

AddHandler cgi-script .pl

 

第二个修改点cgi-bin\Apache22Passwd.cgi.ini

将红色部分内容修改成你的SVN仓库验证文件地址,如我们仓库在安装时选择在D:\Repositories下,那么对应的验证文件就是D:\Repositories\htpasswd。

 

[path]

auth_user_file=D:\Repositories\htpasswd

log_file=svnpass.log

 

最后将补丁包里的4个文件夹覆盖复制到VisualSVN Server安装目录即可,重启服务。刷新一下页面,我们可以看到修改密码链接了,点进去也可以正常访问修改密码页面。

2.2.统一管理


图2.2-1

添加一个版本库,如下图

 

可选自动创建trunk、branches和tags



新建用户

设置版本库对用户的权限

 



按照下图所示,分别对用户【或组】进行授权:


2.3.安全保密

版本服务器有专人维护,申请账号或权限由指定人员进行操作;提供自助在线密码修改,做到密码自主修改控制,保障每个使用者密码安全。


2.4. 总结

VisualSVN已经集成apache和Subversion,所以我们只需要使用VisualSVN作为版本服务器即可, Apache的功能时提供web浏览代码的能力,让开发人员不用每次为了获取一个文档而去更新整个目录,当然,基于web在线修改密码的程序也是基于Apache运行的。VisualSVN就是建立在SVN公版基础上的一个服务端软件,提供对SVN的可视化界面。这两层的加入,将有效提高SVN文件浏览的体验性和增强SVN数据配置的管理性。




原创文章,如果转载,请标注作者:田文  CSDN地址:http://blog.csdn.net/tiwen818

这篇关于完整SVN版本库建设方案(增加自行修改密码功能)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/894867

相关文章

苹果macOS 26 Tahoe主题功能大升级:可定制图标/高亮文本/文件夹颜色

《苹果macOS26Tahoe主题功能大升级:可定制图标/高亮文本/文件夹颜色》在整体系统设计方面,macOS26采用了全新的玻璃质感视觉风格,应用于Dock栏、应用图标以及桌面小部件等多个界面... 科技媒体 MACRumors 昨日(6 月 13 日)发布博文,报道称在 macOS 26 Tahoe 中

Java使用HttpClient实现图片下载与本地保存功能

《Java使用HttpClient实现图片下载与本地保存功能》在当今数字化时代,网络资源的获取与处理已成为软件开发中的常见需求,其中,图片作为网络上最常见的资源之一,其下载与保存功能在许多应用场景中都... 目录引言一、Apache HttpClient简介二、技术栈与环境准备三、实现图片下载与保存功能1.

使用jenv工具管理多个JDK版本的方法步骤

《使用jenv工具管理多个JDK版本的方法步骤》jenv是一个开源的Java环境管理工具,旨在帮助开发者在同一台机器上轻松管理和切换多个Java版本,:本文主要介绍使用jenv工具管理多个JD... 目录一、jenv到底是干啥的?二、jenv的核心功能(一)管理多个Java版本(二)支持插件扩展(三)环境隔

SpringBoot服务获取Pod当前IP的两种方案

《SpringBoot服务获取Pod当前IP的两种方案》在Kubernetes集群中,SpringBoot服务获取Pod当前IP的方案主要有两种,通过环境变量注入或通过Java代码动态获取网络接口IP... 目录方案一:通过 Kubernetes Downward API 注入环境变量原理步骤方案二:通过

Springboot3+将ID转为JSON字符串的详细配置方案

《Springboot3+将ID转为JSON字符串的详细配置方案》:本文主要介绍纯后端实现Long/BigIntegerID转为JSON字符串的详细配置方案,s基于SpringBoot3+和Spr... 目录1. 添加依赖2. 全局 Jackson 配置3. 精准控制(可选)4. OpenAPI (Spri

MybatisPlus service接口功能介绍

《MybatisPlusservice接口功能介绍》:本文主要介绍MybatisPlusservice接口功能介绍,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友... 目录Service接口基本用法进阶用法总结:Lambda方法Service接口基本用法MyBATisP

关于跨域无效的问题及解决(java后端方案)

《关于跨域无效的问题及解决(java后端方案)》:本文主要介绍关于跨域无效的问题及解决(java后端方案),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录通用后端跨域方法1、@CrossOrigin 注解2、springboot2.0 实现WebMvcConfig

Oracle修改端口号之后无法启动的解决方案

《Oracle修改端口号之后无法启动的解决方案》Oracle数据库更改端口后出现监听器无法启动的问题确实较为常见,但并非必然发生,这一问题通常源于​​配置错误或环境冲突​​,而非端口修改本身,以下是系... 目录一、问题根源分析​​​二、保姆级解决方案​​​​步骤1:修正监听器配置文件 (listener.

java对接海康摄像头的完整步骤记录

《java对接海康摄像头的完整步骤记录》在Java中调用海康威视摄像头通常需要使用海康威视提供的SDK,下面这篇文章主要给大家介绍了关于java对接海康摄像头的完整步骤,文中通过代码介绍的非常详细,需... 目录一、开发环境准备二、实现Java调用设备接口(一)加载动态链接库(二)结构体、接口重定义1.类型

MySQL版本问题导致项目无法启动问题的解决方案

《MySQL版本问题导致项目无法启动问题的解决方案》本文记录了一次因MySQL版本不一致导致项目启动失败的经历,详细解析了连接错误的原因,并提供了两种解决方案:调整连接字符串禁用SSL或统一MySQL... 目录本地项目启动报错报错原因:解决方案第一个:第二种:容器启动mysql的坑两种修改时区的方法:本地