在SharePoint中更改当前登录用户的密码
SharePoint Protal 2007已经越来越强了,也让我轻松的给单位部署了一个信息协作平台,不过用户管理方面,包括注册、更改密码一直是它的弱点,虽然可以自己利用.NET、ADSI来写WebPart,但希望以后的版本中能带这些功能,或者Microsoft直接提供![](https://www.cnblogs.com/Emoticons/qface/055242240.gif)
当然现在急用只能自己写了,说实话这两年主要的精力都花在搞网络、系统集成、安全上面去了,编程好久没用,不过通过查阅相信还是难不倒自己的,首先当然是搜集一些关键的CODE了。我现在最需要的是一个能够更改密码的Part,其实现步骤应当是这样的:
1 获得当前页面的登录用户
2 自定义页面输出Html
3 控制用户界面用户操作
4 访问活动目录,修改密码
这里面第1、第4是ADSI编程的关键,就先GOOGLE里查找这方面的资料吧,先收集的是在SharePoint中获取当前登录用户名,代码如下:
自己还没有写具体的代码,因此还没调试。
![](https://www.cnblogs.com/Emoticons/qface/055242240.gif)
当然现在急用只能自己写了,说实话这两年主要的精力都花在搞网络、系统集成、安全上面去了,编程好久没用,不过通过查阅相信还是难不倒自己的,首先当然是搜集一些关键的CODE了。我现在最需要的是一个能够更改密码的Part,其实现步骤应当是这样的:
1 获得当前页面的登录用户
2 自定义页面输出Html
3 控制用户界面用户操作
4 访问活动目录,修改密码
这里面第1、第4是ADSI编程的关键,就先GOOGLE里查找这方面的资料吧,先收集的是在SharePoint中获取当前登录用户名,代码如下:
1
System.Web.HttpContext context = System.Web.HttpContext.Current;
2
string account = this.Page.User.Identity.Name;
3
SPUser user spuser;
4
SPSite site = SPControl.GetContextSite(context);
5
site.CatchAccessDeniedException = false;
6
SPWeb web = site.OpenWeb();
7
foreach(SPUser user in web.Users)
8
{
9
if(user.LoginName.ToLower() == account.ToLower())
10
{
11
spuser = user;
12
}
13
}
14
15
16
'spuser就是当前用户
![](/Images/OutliningIndicators/None.gif)
2
![](/Images/OutliningIndicators/None.gif)
3
![](/Images/OutliningIndicators/None.gif)
4
![](/Images/OutliningIndicators/None.gif)
5
![](/Images/OutliningIndicators/None.gif)
6
![](/Images/OutliningIndicators/None.gif)
7
![](/Images/OutliningIndicators/None.gif)
8
![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
9
![](/Images/OutliningIndicators/InBlock.gif)
10
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
11
![](/Images/OutliningIndicators/InBlock.gif)
12
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
13
![](/Images/OutliningIndicators/ExpandedBlockEnd.gif)
14
![](/Images/OutliningIndicators/None.gif)
15
![](/Images/OutliningIndicators/None.gif)
16
![](/Images/OutliningIndicators/None.gif)
自己还没有写具体的代码,因此还没调试。