Sharepoint增加修改密码功能
Sharepoint中没有自带的修改密码的功能。
如果使用的是AD验证,修改密码,只要修改域帐号的用户名密码就可以了。以下代码可以修改本机密码和域帐号密码。
做法是,添加一个webpart,做一个页面,在右上角的Site Settings里面添加一个菜单项目,链接到修改密码页面。
//ChangeADUserPassword("ADName", "Name", "oldPwd", "newPwd")
public string ChangeADUserPassword(string DomainName, string UserName, string oldPass, string newPass)
{
try
{
string strLDAP = "LDAP://" + DomainName;
string fullLoginName = DomainName + "\\" + UserName;
using (DirectoryEntry bjDE = new DirectoryEntry(strLDAP, DomainName + "\\" + UserName, oldPass))
{
DirectorySearcher deSearcher = new DirectorySearcher(objDE);
deSearcher.Filter = "(&(objectClass=user)(sAMAccountName=" + UserName + "))";
DirectoryEntry usr = deSearcher.FindOne().GetDirectoryEntry();
usr.Invoke("ChangePassword", new Object[] { oldPass, newPass });
usr.CommitChanges();
}
return ("Change domain user password successed!");
}
catch (Exception ex)
{
return ("Change domain user password failed, error message:" + ex.Message);
}
}
public static string ChangeLocalUserPassword(string LocalHostName, string UserName, string oldPass, string newPass, string AdminName, string AdminPass)
{
try
{
DirectoryEntry AD = new DirectoryEntry("WinNT://" + LocalHostName + ",computer");
DirectoryEntry NewUser = AD.Children.Find(UserName);
NewUser.Invoke("SetPassword", new object[] { newPass });
NewUser.CommitChanges();
return ("Change local machine password successed!");
}
catch (Exception ex)
{
return ("Change local machine password failed, error message:" + ex.Message);
}
} //whether the machine name and AD name is the same to deside use which method to change the password.
if (Environment.MachineName == Environment.UserDomainName)
{
SPSecurity.RunWithElevatedPrivileges(delegate() { lblErrorMessage.Text = ChangeLocalUserPassword(Environment.MachineName, lblMessage.Text.Substring(, lblMessage.Text.IndexOf(" ")), txtOldPassword.Text, txtNewPassword.Text, "", ""); });
}
else
{
lblErrorMessage.Text = ChangeADUserPassword(Environment.UserDomainName, Environment.UserName, txtOldPassword.Text, txtNewPassword.Text);
}
参考博客地址:http://www.cnblogs.com/dosboy/archive/2007/08/01/838859.html
Sharepoint增加修改密码功能的更多相关文章
- SSH 基于ajax实现修改密码功能步骤梳理
1. 为密码输入框进行输入校验,使用easyUI提供的easyui-validatebox <table cellpadding=3> <tr> <td>新密码:& ...
- Web实现数据库链接的登录注册修改密码功能
/** * Copyright (C), 2017-2017 * FileName: User * Author: ichimoku * Date: 2017/12/5 14:31 * version ...
- JavaWeb网上图书商城完整项目--day02-19.修改密码功能流程分析
我们来看看修改密码的业务流程操作:
- SharePoint中修改密码的WEB Part之终极版:即可以修改AD,又可以修改本机用户密码的Web Part!!
转:http://www.cnblogs.com/dosboy/archive/2007/08/01/838859.html 在网上查了那么多SharePoint密码修改的第三方开发,都有问题.总结下 ...
- Django form表单功能的引用(注册,复写form.clean方法 增加 验证密码功能)
1. 在app下 新建 forms.py 定义表单内容,类型models from django import forms class RegisterForm(forms.Form): userna ...
- sharepoint服务器修改密码后出现HTTP Error 503
HTTP Error 503 解决办法: 更改sharepoint 网站应用程序池标示后,更改标示重新输入管理员密码,问题解决!
- js用户修改密码功能模块
;(function(){ var ajaxSub = false, showError = function(msg){ if(msg){ $('#er_txt').html(msg).show() ...
- Yii2 实现修改密码功能
YII2对密码加密生成的结果是不同的,即用相同的初始密码在不同时间得到的加密结果不同,所以我们不能用常用的方法去验证密码是否正确(将密码加密后与数据库中的密码相比较).YII2有自己的加密以及密码验证 ...
- Liferay 6.2 改造系列之七:关闭使用条款确认、密码提醒、新用户强制修改密码等功能
关闭使用条款确认: 在/portal-master/portal-impl/src/portal.properties配置文件中,有如下配置: # # Set this to true if all ...
随机推荐
- Linux下查看tcp连接数及状态
netstat -n | awk ‘/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}’ TIME_WAIT 8947FIN_WAIT1 15FIN_W ...
- Ink – 帮助你快速创建响应式邮件(Email)的框架
Ink 可以帮助你快速创建响应的 HTML 电子邮件,可工作在任何设备和客户端.这个 CSS 框架帮助您构建可在任何设备上阅读的 HTML 电子邮件.曾经需要你兼顾各种邮件客户端的日子一去不复返了,I ...
- 时尚前沿:15个创意的 3D 字体设计艺术作品欣赏
在这里,我们为大家呈现30个创意的3D版式设计,注意每个设计中字体,颜色,款式的使用,让您享受并得到他们的灵感. 版式设计是一个美丽的艺术形式.无论是粗体还是细体,用不同的字体或使用拟物化技术操纵文本 ...
- Ladda – 把加载提示效果集成到按钮中,提升用户体验
Ladda 是一组集成了加载提示的按钮,以弥合行动和反馈之间的时间间隔,提供更好的功能使用体验.主要用于在用户点击提交之后,向用户提供即时的反馈,让他们知道浏览器正在处用户提交的任务. 您可能感兴趣的 ...
- Swift_3.0_开启注释功能
1. Swift_3.0 没法快捷键(command+/)注释的原因:这个是因为苹果解决xcode ghost,把插件屏蔽了. 2. 解决办法: (1) 终端输入: sudo /usr/libexec ...
- Java sun.misc.Unsafe类的学习笔记
Java未开源的Unsafe类 Unsafe类可以为我们提供高效并且线程安全方式操作变量,直接和内存数据打交道. 获取Unsafe实体的方法 private static Unsafe getUnsa ...
- 【第三课】ANR和OOM——贪快和贪多的后果(上)
恼人的ANR 早先年用Android的时候,就连很多知名的app也总是莫名其妙崩溃,好像手机快的时候会崩溃,手机卡的时候app会卡死.卡死的时候会弹出来一个框,询问是要结束app还是继续等待.这就是A ...
- 双系统Ubuntu无法访问windows磁盘分区解决方法
为了更好的体验各种操作系统,在电脑中安装双系统是很好的选择,但在使用中难免会遇到这样或那样的问题. 最近总是遇到Ubuntu系统下无法访问windows磁盘分区问题,看了系统日志发现是挂载磁盘出问题了 ...
- UVA题目分类
题目 Volume 0. Getting Started 开始10055 - Hashmat the Brave Warrior 10071 - Back to High School Physics ...
- MVC应用程序中管理(更新)上传的文件
实现上传文件功能,有时上传也会操作出错,能让用户有改正有机会,开发上传文件能有更新的功能. 文件上传时,如果是存储于应用程序某一目录的话,在更新时需要了解一些流程,先是删除旧文件,更新数据表相关信息, ...