希望大家能提出自己的意见

时间:2022-04-26 08:55:51

一.VisualSvn Server 这个软件大家都知道,具体使用时创建用户名暗码和组时,每次都要登陆到VisualSvn Server地址的机器上,次次如此...

由于一些原因要把这个用户打点的成果集成到OA中,这样可以OA中集中打点SVN的帐号(所有措施都是基于局域网使用)

二.VisualSvn Server的帐户文件存在当前Repositories下的 htpasswd 文件中,格局为   用户名:xxxxxxxxxxxxxxxxxxxxxxxxxx(x为加密后的暗码字符串)

这样需要解决的关键就在于怎么样得到暗码加密后的字符串.通过google找到了一个C#实现htpasswd加密的类库"CryptSharp", site:https://www.zer7.com/software/cryptsharp (不需要FQ)

三.使用代码要领

using CryptSharp;
string
cryptedPassword = Crypter.MD5.Crypt(password, new CrypterOptions() { { CrypterOption.Variant, MD5CrypterVariant.Apache } });

校验要领

bool matches = Crypter.CheckPassword(testPassword, cryptedPassword);

固然,这个类库还撑持其它加密要领,具体请参照类库的网站

上述代码,通过手动替换我本身的VisualSvn Server的处事器上的用户的暗码,测试通过

四.关键的问题解决后,回到 一中要解决的问题,这里只是一个思路

我的想法是, OA会部署到一台处事器上,web形式的,无法直接改削VisualSvn Server的暗码文件,所以还需要在VisualSvn Server的那台机器上运行一个代办代理措施,由这个代办代理措施来实现具体的暗码文件的读写

像这样,  OA(web)-->代办代理措施-->读写暗码文件并返回功效

接下来会凭据这个思路来实现这个成果

五.不知道大家有没有更好解决方案,但愿大家能提出本身的定见