• 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++的威力
    C++11实现一个自动注册的工厂
    REST RPC架构思想
    thinking in object pool
    worksteal thread pool
    check member function
    C# string 常用功能的方法扩展
    C#设计模式总结
    JAVA过滤器和拦截器的区别
  • 原文地址:https://www.cnblogs.com/jianyi0115/p/1238233.html
Copyright © 2020-2023  润新知