sharepoint用户:SharePoint如何模拟用户

  在SharePo模拟指定用户身份进行操作代码:

     siteUrl = "http://ecpe-dev:82/sites/sjs" ;
      //首先用管理员身份取到某个用户Token
      //应该用SPSecurity.RunWithElevatedPrivilege来提升权限.
      SPSite site = SPSite(siteUrl);
      //此时用户为SHAREPOINTsystem
      Response.Write(site.RootWeb.CurrentUser);
      //获取到要模拟用户token  
      SPUser user = site.RootWeb.SiteUsers["saicmotorlabuser1"];
  
      //利用用户Token构造新Site对象
      SPSite siteWithUser = SPSite(siteUrl, user.UserToken);
      SPWeb webWithUser = siteWithUser.RootWeb;
      //此时用户为SAICMOTORLABuser1
      Response.Write( webWithUser.CurrentUser );
      SPList listWithUser = webWithUser.Lists["simeList"];
      //other code


  以上代码可以用在需要采用指定用户权限操作情况如写个web服务按照传入用户名返回其有权查看ListItem

Tags:  sharepointserver sharepoint2007 sharepoint sharepoint用户

延伸阅读

最新评论

发表评论