• SharePoint如何模拟用户


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

             string siteUrl = "http://ecpe-dev:82/sites/sjs" ;

                //首先用管理员身份取到某个用户的Token

                //应该用SPSecurity.RunWithElevatedPrivilege来提升权限.
                SPSite site = new SPSite(siteUrl);

                //此时用户为SHAREPOINT\system
                Response.Write(site.RootWeb.CurrentUser);

                 

                 //获取到要模拟的用户的token    

                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。


  • 相关阅读:
    c函数调用过程
    查找匹配行及前后5行
    指向类成员函数的指针
    C++箴言:理解typename的两个含义
    不定参数
    定时器
    unix编译
    sed
    大脑皮层的梦工厂
    静态链接库顺序问题
  • 原文地址:https://www.cnblogs.com/jianyi0115/p/1238233.html
Copyright © 2020-2023  润新知