SharePoint 2013 JavaScript 对象判断用户权限

场 景

  近期有个场景,判断当前用户对项目有没有编辑权限,使用JavaScript完成,弄了好久才弄出来,分享一下,有需要的自行扩展吧,具体如下;

代 码

function getPermissions()
{
    var mycontext = new SP.ClientContext();
    var mysite = mycontext.get_web();
    var mylist = mysite.get_lists().getByTitle(‘Demo‘);
    myitem = mylist.getItemById(16);
    mycontext.load(myitem,‘EffectiveBasePermissions‘);
    mycontext.executeQueryAsync(function(){
        var perms = myitem.get_effectiveBasePermissions();
        if (perms.has(SP.PermissionKind.editListItems)) {
            alert("Yes!");
        }
        else
        {
            alert("No!");
        }
    },function(){});
}

SP.SOD.executeFunc(‘sp.js‘,‘SP.ClientContext‘,getPermissions);

测 试
  拥有编辑权限的人:

  没有编辑权限的人:

  特:服务器端对象模型:item.DoesUserHavePermissions()方法即可;

时间: 2024-10-25 18:26:04

SharePoint 2013 JavaScript 对象判断用户权限的相关文章

SharePoint 2013 JavaScript 对象推断用户权限

?场 景 最近有个场景,推断当前用户对项目有没有编辑权限,使用JavaScript完毕.弄了好久才弄出来.分享一下,有须要的自行扩展吧,详细例如以下: 代 码 function getPermissions() { var mycontext = new SP.ClientContext(); var mysite = mycontext.get_web(); var mylist = mysite.get_lists().getByTitle('Demo'); myitem = mylist.

Sharepoint 2013 user permissions(用户权限)

 Read: This permission level gives you read-only access to the website. Contribute:  In addition to all the permissions included in the Read permission level, the Contribute permission level allows you to create, edit, and delete items in existing li

SharePoint 2013 单一页面赋设计权限

本文介绍SharePoint的使用中,断开单一页面权限,给用户编辑权限以及操作中遇到的问题,希望给相关需要的人一个参考. 1.首先进入页面库,找到我们的页面,进入共享,如下图: 2.在弹出的窗口中选择高级,如下图: 3.在进入权限编辑页面,首先断开当前页面的权限继承,如下图: 4.然后勾选所有继承的权限,删除,如下图: 5.而后点击Grant Permission,也就是授权,如下图: 6.按照我的理解,该用户对站点有访问权限,对单独页面具有编辑权限,就可以个性化该页面,但是添加一些WebPar

Sharepoint 2013列表视图和字段权限扩展插件!

记得2014年春节期间,有博客园的网友通过QQ向我咨询Sharepoint 2013列表视图和字段权限扩展,因为之前他看到我博客介绍Sharepoint 2010列表视图和字段的权限控制扩展使用,问有没有这方面的列表权限扩展插件?我告诉他Sharepoint 2010的列表权限扩展插件并不能在Sharepoint 2013中使用,不能向上兼容的,且Sharepoint 2013的功能也有所升级了,系统底层架构已发生了一些变化.由于他需要在Sharepoint 2013项目中使用到此功能,有大量的

sharepoint 2013 Form认证 注销用户凭证

在网上找到一个关于sharepoint 2013 Form表单认证的sign out 方法,经过验证,有效.方法如下: private void RemoveCookiesAndSignOut() { // Clear sessionstate. if (Context.Session !=null) { Context.Session.Clear(); } string cookieValue = string.Empty; if(Context.Request.Browser["suppor

SharePoint 2013/2010 根据当前用户的某个属性过滤搜索结果

本文讲述如何在SharePoint 2013/2010 中根据当前用户的某个属性过滤搜索结果. 最近客户有一个需求,就是根据用户所在的国家(User Info List里面有Country字段),在搜索时只显示该用户所在国家的记录(对应的list 有Country 字段). 一般来说SharePoint 搜索是根据当前用户的权限来决定是否可以搜索到对应的记录,但是过是这样的话,需要将列表的所有记录都打破权限记录,这是非常损耗性能的,而且这样的权限结构维护起来很复杂. 本文将使用 ISecurit

SharePoint 2013 同步FBA认证用户

SharePoint 开启了基于FBA的身份认证,常常会遇到用户组用户的问题,当我加入一个AD账号.无法同一时候加入Form认证的用户,这时.仅仅能手动加入,比較麻烦:所以.写了一个服务.用来每天晚上同步一下用户组中的AD账号和Form账号. 原理 原理比較简单,就是遍历用户组的全部用户,同步的时候首先删掉全部的Form账号,然后依据全部的AD账号去查找Form账号又一次加入:假设碰到AD安全组,就去安全组中遍历全部的用户.然后查找Form账号加入,每天晚上定时运行. 长处 免去加入账号的时候加

SharePoint 2013 显示“以其他用户身份登录”菜单项

最近在SharePoint 2013的网站上发现,没有看到有切换不同用户登录的入口,在SharePoint 2010中是存在这样的菜单项能够很方便的进行用户切换的,不知道为什么,SharePoint 2013默认竟然没有.如下图: 这个功能我觉得还是有必要存在的,所以我们需要给它添加一个“以其他用户身份登录”的入口 在\15\TEMPLATE\CONTROLTEMPLATES目录下,找到Welcome.ascx文件 在这个文件的ID为ID_RequestAccess节点后,添加如下代码: 1 <

SharePoint 2013 通过HttpModule 管理视图权限

HttpModule工作原理 HttpModule负责监听HttpRequest,当一个HTTP请求到达HttpModule时,整个ASP.NET Framework系统还并没有对这个HTTP请求做任何处理,也就是在此时,我们进行权限的判断,如果没有相关权限导向跳转页面. 创建HttpModule并部署 1.打开Visual Studio 2013(当然可以用你所安装的任何版本VS),选择创建新的Project,如下图: 2.选择Visual C#节点中Web几点,选择“ASP.NET Web