完整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

相关文章

Python极速搭建局域网文件共享服务器完整指南

《Python极速搭建局域网文件共享服务器完整指南》在办公室或家庭局域网中快速共享文件时,许多人会选择第三方工具或云存储服务,但这些方案往往存在隐私泄露风险或需要复杂配置,下面我们就来看看如何使用Py... 目录一、android基础版:HTTP文件共享的魔法命令1. 一行代码启动HTTP服务器2. 关键参

在macOS上安装jenv管理JDK版本的详细步骤

《在macOS上安装jenv管理JDK版本的详细步骤》jEnv是一个命令行工具,正如它的官网所宣称的那样,它是来让你忘记怎么配置JAVA_HOME环境变量的神队友,:本文主要介绍在macOS上安装... 目录前言安装 jenv添加 JDK 版本到 jenv切换 JDK 版本总结前言China编程在开发 Java

OpenCV在Java中的完整集成指南分享

《OpenCV在Java中的完整集成指南分享》本文详解了在Java中集成OpenCV的方法,涵盖jar包导入、dll配置、JNI路径设置及跨平台兼容性处理,提供了图像处理、特征检测、实时视频分析等应用... 目录1. OpenCV简介与应用领域1.1 OpenCV的诞生与发展1.2 OpenCV的应用领域2

Java实现预览与打印功能详解

《Java实现预览与打印功能详解》在Java中,打印功能主要依赖java.awt.print包,该包提供了与打印相关的一些关键类,比如PrinterJob和PageFormat,它们构成... 目录Java 打印系统概述打印预览与设置使用 PageFormat 和 PrinterJob 类设置页面格式与纸张

使用Go实现文件复制的完整流程

《使用Go实现文件复制的完整流程》本案例将实现一个实用的文件操作工具:将一个文件的内容完整复制到另一个文件中,这是文件处理中的常见任务,比如配置文件备份、日志迁移、用户上传文件转存等,文中通过代码示例... 目录案例说明涉及China编程知识点示例代码代码解析示例运行练习扩展小结案例说明我们将通过标准库 os

MySQL 8 中的一个强大功能 JSON_TABLE示例详解

《MySQL8中的一个强大功能JSON_TABLE示例详解》JSON_TABLE是MySQL8中引入的一个强大功能,它允许用户将JSON数据转换为关系表格式,从而可以更方便地在SQL查询中处理J... 目录基本语法示例示例查询解释应用场景不适用场景1. ‌jsON 数据结构过于复杂或动态变化‌2. ‌性能要

Java堆转储文件之1.6G大文件处理完整指南

《Java堆转储文件之1.6G大文件处理完整指南》堆转储文件是优化、分析内存消耗的重要工具,:本文主要介绍Java堆转储文件之1.6G大文件处理的相关资料,文中通过代码介绍的非常详细,需要的朋友可... 目录前言文件为什么这么大?如何处理这个文件?分析文件内容(推荐)删除文件(如果不需要)查看错误来源如何避

MySQL 迁移至 Doris 最佳实践方案(最新整理)

《MySQL迁移至Doris最佳实践方案(最新整理)》本文将深入剖析三种经过实践验证的MySQL迁移至Doris的最佳方案,涵盖全量迁移、增量同步、混合迁移以及基于CDC(ChangeData... 目录一、China编程JDBC Catalog 联邦查询方案(适合跨库实时查询)1. 方案概述2. 环境要求3.

SpringBoot3.X 整合 MinIO 存储原生方案

《SpringBoot3.X整合MinIO存储原生方案》本文详细介绍了SpringBoot3.X整合MinIO的原生方案,从环境搭建到核心功能实现,涵盖了文件上传、下载、删除等常用操作,并补充了... 目录SpringBoot3.X整合MinIO存储原生方案:从环境搭建到实战开发一、前言:为什么选择MinI

创建Java keystore文件的完整指南及详细步骤

《创建Javakeystore文件的完整指南及详细步骤》本文详解Java中keystore的创建与配置,涵盖私钥管理、自签名与CA证书生成、SSL/TLS应用,强调安全存储及验证机制,确保通信加密和... 目录1. 秘密键(私钥)的理解与管理私钥的定义与重要性私钥的管理策略私钥的生成与存储2. 证书的创建与