为VisualSVN Server增长在线修改用户密码的功能

原文: 为VisualSVN Server增长在线修改用户密码的功能

 附件下载:点击下载html

VisualSVN Server是一个很是不错的SVN Server程序,方便,直观,用户管理也异常方便。算法

不过,它自己并无提供在线修改密码的功能。因为在实际使用过程当中,一旦SVN的用户比较多,只单单依靠windows的管理控制台去修改密码 显然是不太合适的。windows

总不能任何人想改个密码还要经过管理员吧?因此,就想为其增长在线修改密码的功能。浏览器

说实话,网上已经有了能够在线修改密码的方法。试用过,也的确能够。不过一直苦于不知道svn密码的加密算法,也不太会调用dllsvn实际上是使用的httpd的加密库),不事后来机会来了,一不留神看了一下libapr-util的源码,呵呵,发现原来svn使用的加密算法也不太复杂吗(呵呵,其实蛮复杂的,可是用程序来实现貌似还不算难)。索性就弄了个,还挺好用^_^svn

先将写好的程序放上来吧,稍候再把源码贴出来(嘿嘿,先卖卖关子)post

一、首先把同文件夹里面的内容copyVisual SVN Server的安装目录下覆盖掉同名的文件夹ui

接着,修改conf目录下的httpd-custom.conf文件, 把“ScriptAlias”一行后面的路径修改成你的机器上的VisualSVN Server的实际路径:加密

 

而后,修改cgi-bin目录下的svnpass.ini文件:url

 

这是一个配置文件,用来控制修改密码的程序的。简单解释一下:spa

 1: [PATH]

 2: #下面这行用于指定svn的密码文件

 3: pwdFilePath=htpasswd

 4:  

 5: [ERRCODE]

 6: #下面这些行用来指定当出现相应错误时的用户提示

 7: UnKnownErr=Unknown error

 8: NoSuchUser=No Such User

 9: IncorectOldPwd=Incorect old password

 10: NewPwdNotMatch=New password not match

 11: UserNameTooShort=Username is too short to go

 12: UserNameTooLong=Username is too long to go

 13: PwdTooShort=the Password is too short to go

 14: PwdTooLong=the Password is too long to go

 15:  

 16: [RULES]

 17: # 下面这几行用于控制用户名的最小和最大长度,以及密码的最小和最大长度

 18: MinUserNameLen=1

 19: MaxUserNameLen=20

 20: MinPwdLen=1

 21: MaxPwdLen=30

根据须要修改完毕以后(通常只须要修改pwdFilePath便可),重启VisualSVN Server。打开浏览器,会发现svn的界面有点不太同样了:

 

点击左上角的修改密码,便可在网页的最上部弹出一个修改密码的表单:

 

输入密码信息以后,点击确认修改,便可实现密码修改功能。若是信息有误,则会提示相应的信息:

 

这些提示信息都是在ini文件里定义的。

相关文章
相关标签/搜索