為VisualSVN Server增加線上修改使用者密碼的功能

來源:互聯網
上載者:User

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的實際路徑:

然後,修改cgi-bin目錄下的svnpass.ini檔案:

這是一個設定檔,用來控制修改密碼的程式的。簡單解釋一下:

   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檔案裡定義的。

 

OK,just enjoyit ~   ^_^

 

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

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.