通过代码实现web方式重置域密码及同步Domino密码
2013-12-30 23:04
671 查看
通过代码实现web方式重置域密码及同步Domino密码
前面我们介绍了,如果介绍了,通过代码实现域密码修改流程,今天我们主要介绍如何实现web方式重置域密码,该功能主要面向管理员;同时挂载邮箱密码重置功能链接,实现,通过web方式重置域密码后,Domino邮箱密码也随之重置达到统一的效果;
主要做法就是在域密码修改及遗忘流程功能下修改代码实现重置密码效果:
添加图示并且添加重置密码代码:
可以复制其他试图及修改代码即可;
重置域密码后,需要重置Domino密码:所以需要添加关联domino下web方式重置密码的URL
web下方式重置domino密码
然后,重新生成解决方案及发布:
发布后,可通过iis访问浏览
通过添加网站方式,选择发布后的路径文件
添加后,修改应用程序池的版本;默认是net2.0,需要修改net4.0
浏览访问
接下来测试一下
重置user1的密码为123123
通过user01及重置后的密码尝试验证登陆
接下来测试domino密码是否也被重置:
本文出自 “高文龙” 博客,请务必保留此出处http://gaowenlong.blog.51cto.com/451336/1346887
前面我们介绍了,如果介绍了,通过代码实现域密码修改流程,今天我们主要介绍如何实现web方式重置域密码,该功能主要面向管理员;同时挂载邮箱密码重置功能链接,实现,通过web方式重置域密码后,Domino邮箱密码也随之重置达到统一的效果;
主要做法就是在域密码修改及遗忘流程功能下修改代码实现重置密码效果:
添加图示并且添加重置密码代码:
可以复制其他试图及修改代码即可;
@{ ViewBag.Title = "Resetpwd"; Layout = "~/Views/Shared/_LayoutView.cshtml"; } @section head{ <script src="@System.Security.Policy.Url.Content("~/Scripts/home.js")" type="text/javascript"></script> } <div id="contactArea"> </div> <div class="pcontent"> <div class="pstep02"> <b>重置密码</b> </div> <div class="pstep03"> Change your password </div> <div class="pstep04"> A strong password helps prevent </div> <ul class="ulstep"> <li><b>Iiosoft Account</b> <a style="cursor: pointer;" id="Search">What's this?</li> <li> <input name="" id="itcode" type="text" class="a01input" /> </li> <li class="liTOP"><b>New password </b></li> <li> <input name="" id="newpwd" type="password" class="a01input" /> </li> <li style="color: #999;">8-character minimum; case sensitive </li> <li class="liTOP"><b>Reenter password </b></li> <li> <input name="" id="rtpwd" type="password" class="a01input" /> </li> </ul> <div class="topw"> <input type="button" id="UserSetpwd" value="Save" class="btnSave" /> <input type="button" id="UserpwdCancel" value="Cancel" class="btnCancel" /> </div> <div id="Loading3" style="display: none"> <img src="../img/grid-loading.gif" /><span id="sProcess3">更新密码中,请稍后...</span> </div> </div> 然后修改homecontroller.cs 添加一下代码: public void ChangePwd() { string sItCode = Request["sItCode"]; string sOldPwd = Request["sOldPwd"]; string sNewPwd = Request["sNewPwd"]; ADOperator ao = new ADOperator(); int y = ao.IsUserExistsByAccount(sItCode); string Rs = ""; if (y == 1) { int x = ao.Login(sItCode, sOldPwd); if (x == 1) { int z = ao.ChangeUserPassword(sItCode, sOldPwd, sNewPwd); if (z == 1) { Rs = "CS"; //调用Domino密码修改 changeDominoPwd(sItCode, sNewPwd); } else { Rs = "TR"; } } else { Rs = "EP"; } } else { Rs = "NU"; } ao.dispose(); Response.Write(Rs.ToString()); } //重置密码 //[HttpGet] public void SetPassword() { string Rs = "CS"; string sItCode = Request["sItCode"]; string sOldPwd = Request["sOldPwd"]; string sNewPwd = Request["sNewPwd"]; ADOperator ao = new ADOperator(); int y = ao.IsUserExistsByAccount(sItCode); if (y == 1) { ADOperator.SetPasswordByAccount(sItCode, sNewPwd); changeDominoPwd(sItCode, sNewPwd); Response.Write(Rs.ToString()); } } #region Domino密码同步修改 public static void changeDominoPwd(String sNewUserName, String sNewPwd) { String serverName = "iio-mail01"; String cookie = "%temp%/cookie.txt"; String system_username = "changepwd"; String system_passwd = "password8"; String str_login = "cmd.exe /c curl -c " + cookie + " -d \"%25%25ModDate=0FF5136000000000&Username=" + system_username + "&Password=" + system_passwd + "&RedirectTo=%2FChgUpwd.nsf%2Finternetpwd%3FOpenForm\" \"http://"+serverName+"/names.nsf?Login\" "; String str_changepwd = "cmd.exe /c curl -b " + cookie + " -d \"__Click=0&Form=internetpwd&Time=2013-12-18+19%3A47%3A48&CurLoginUser=CN%3D" + system_username + "%2FO%3Diiosoft&UserName=" + sNewUserName + "&UserPassword=" + sNewPwd + "\" \"http://"+serverName+"/ChgUpwd.nsf/internetpwd?OpenForm&Seq=1\""; Win32_Process win32 = new Win32_Process(); win32.CreateProcess(str_login); win32.CreateProcess(str_changepwd); } #endregion } }
重置域密码后,需要重置Domino密码:所以需要添加关联domino下web方式重置密码的URL
web下方式重置domino密码
然后,重新生成解决方案及发布:
发布后,可通过iis访问浏览
通过添加网站方式,选择发布后的路径文件
添加后,修改应用程序池的版本;默认是net2.0,需要修改net4.0
浏览访问
接下来测试一下
重置user1的密码为123123
通过user01及重置后的密码尝试验证登陆
接下来测试domino密码是否也被重置:
本文出自 “高文龙” 博客,请务必保留此出处http://gaowenlong.blog.51cto.com/451336/1346887
相关文章推荐
- Domino9下通过代理实现WEB方式重置Internet密码
- Domino9下通过web方式批量重置邮箱密码
- 通过代码程序实现域密码与Domino密码同步
- Gitee码云通过WebHooks实现自动同步代码部署
- Windows Server 2012 Web方式修改域用户密码-通过Remote Desktop Web实现
- 实现域内用户能够通过网页web方式修改与用户密码
- Windows Server 2008 R2 实现通过WEB方式修改域账号密码
- QTE下通过Http协议以同步方式与Web服务器通信的实现
- 通过Web方式修改域账户密码的ASP核心代码
- svn利用钩子脚本功能实现代码同步到web目录
- Linux CentOS SVN 设置钩子hooks/post-commit来同步更新服务器web目录,实现代码自动部署
- 一种通过async/await实现函数同步执行的方式
- 进程间同步(Process Synchronization)-2 通过semaphore方式来实现进程间同步的例子
- 初学svn对版本进行控制 用post- commit钩子实现代码同步到web目录
- 通过RTLabel、RCLabel、FTCoreText及webView结合SDWebImage等4种方式实现左滑或下拉中cell中图文混排使用场景方案
- Domino下通过web方式管理服务器信息
- svn利用钩子脚本功能实现代码同步到web目录
- 在xp中tc环境下实现的 销售管理系统(可切换繁体和简体,可设密码,可通过修改代码修改字体颜色)
- 运用C#编程通过OPC方式实现PC机与西门子PLC通讯-同步通讯篇[转]
- 通过Git WebHooks+脚本实现自动更新发布代码之shell脚本