模拟身份登陆系统 SharePoint如何模拟用户
在SharePoint模拟指定用户身份进行操作的代码:
string siteUrl = “http://ecpe-dev:82/sites/sjs” ;
//首先用管理员身份去到某个用户的Token
SPSite site = new SPSite(siteUrl);
//此时用户为SHAREPOINT\system
Response.Write(site.RootWeb.CurrentUser);
SPUser user = site.RootWeb.SiteUsers[“saicmotorlab\\user1”];
//利用用户Token构造新的Site对象
SPSite siteWithUser = new SPSite(siteUrl, user.UserToken);
SPWeb webWithUser = siteWithUser.RootWeb;
//此时用户为SAICMOTORLAB\user1
Response.Write( webWithUser.CurrentUser );
SPList listWithUser = webWithUser.Lists[“simeList”];
//other code
以上代码可以用在需要采用指定用户权限操作的情况,如写个web服务,按照传入的用户名返回其有权查看的ListItem。