zoukankan      html  css  js  c++  java
  • 为VisualSVN Server增加在线修改用户密码的功能

    VisualSVN Server是一个非常不错的SVN Server程序,方便,直观,用户管理也异常方便。不过,它本身并没有提供在线修改密码的功能。由于在实际使用过程中,一旦SVN的用户比较多,只单单依靠windows的管理控制台去修改密码 显然是不太合适的。总不能任何人想改个密码还要通过管理员吧?所以,就想为其增加在线修改密码的功能。

    说实话,网上已经有了可以在线修改密码的方法。试用过,也的确可以。不过我这个人说好听点是比较勤奋,喜欢钻研,说难听点,就是喜欢钻牛角尖,呵呵。所以,一直想自己写一个在线修改密码的程序。不过一直苦于不知道svn密码的加密算法,也不太会调用dll(svn其实是使用的httpd的加密库),所以,一开始只能忍了~

    不过后来机会来了,一不留神看了一下libapr-util的源码,呵呵,发现原来svn使用的加密算法也不太复杂吗(呵呵,其实蛮复杂的,但是用程序来实现貌似还不算难)。索性就弄了个,还挺好用^_^

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

    首先,点击下面的链接下载在线修改密码所需的文件:

    VisualSVN Server在线修改密码用到的文件 点此下载

    然后,解压之后,把里面的内容copy到Visual SVN Server的安装目录下覆盖掉同名的文件夹

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

    image

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

    image

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

       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的界面有点不太一样了:

    image

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

    image

    输入密码信息之后,点击“确认修改”,即可实现密码修改功能。如果信息有误,则会提示相应的信息:

    image

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

    OK,just enjoyit ~   ^_^

    REFERENCES:http://www.mculee.cn/post/69.html


    ---------------------------------------------------------------------------------------------------------------------------------
    copyright:http://www.cnblogs.com/anee/
  • 相关阅读:
    Microsoft Visio 2013 简体中文版
    visio2013产品密钥激活
    WebConfigurationManager和ConfigurationManager区别
    错误 the type "xxxx" is defined in an assembly that is not refernced.You must add a reference to assem
    Windows10安装oracle 19c数据库+PLsql详细安装过程
    js 三个input输入框,组合查询。
    Vue.js组件教程 https://www.jb51.net/Special/926.htm
    LeetCode刷题之路
    涉猎---Java多线程
    深信服翔鹰计划线上笔试考察点总结(路由,虚拟架构,IPV4,Tcp/IP......)
  • 原文地址:https://www.cnblogs.com/anee/p/2675880.html
Copyright © 2011-2022 走看看