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-23 09:54:30

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

如何在SharePointDesigner订制页中判断用户权限

有时候需要在通过SharePointDesigner进行的订制开发里判断用户的权限点,并根据不同的权限点来判断用户的身份提供不同的服务,有一个默认提供的识别权限的控件SPSecurityTrimmedControl,在通过SharePointDesigner进行站点订制的时候如果希望根据不同的权限有不同的Behavior,这个控件尤其有用. 在下例中就根据不同的权限来设置脚本变量的不同值,请注意权限字符串是与的关系,也就是权限会进行叠加. <script> var msg = 0; var c

SharePoint 2013 同步FBA认证用户

SharePoint 开启了基于FBA的身份认证,经常会遇到用户组用户的问题,当我加入一个AD账号,无法同时加入Form认证的用户,这时,只能手动添加,比较麻烦:所以,写了一个服务,用来每天晚上同步一下用户组中的AD账号和Form账号. 原理 原理比较简单,就是遍历用户组的所有用户,同步的时候首先删掉所有的Form账号,然后根据所有的AD账号去查找Form账号重新添加:如果碰到AD安全组,就去安全组中遍历所有的用户,然后查找Form账号添加,每天晚上定时执行. 优点 免去添加账号的时候添加2次,

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

SharePoint 2013 JavaScript API 记录

1.获取创建者字段(Author),oListItem为SPListItem对象 oListItem.get_item('Author')只能获取到对象,获取用户名要用oListItem.get_item('Author').get_lookupValue();   2.获取当前用户 var clientContext = new SP.ClientContext();user = clientContext.get_web().get_currentUser();   3.不支持SP.Clie

SharePoint 2013 单一页面赋设计权限

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

SharePoint 2013 使用 PowerShell 更新用户

在SharePoint开发中,经常会遇到网站部署,然而,当我们从开发环境,部署到正式环境以后,尤其是备份还原,所有用户组的用户,还依然是开发环境的,这时,我们就需要用PowerShell更新一下: PowerShell命令截图: Windows PowerShell ISE编辑工具编写PowerShell非常方便,头上的一句add是添加SharePoint的引用: PowerShell完整代码: PowerShell的编写和cmd命令.C#代码都有一些区别,尤其是比较字符,字符串连接,变量等等,

请问asp.net做论坛的话,初了用session +if语句判断用户权限,还有别的方法吗

问题描述 我现在就只能用session["role"]=数据库字段来判断,听说web.config里面那个设置的,authentication可以,具体该怎么用啊,谢谢 解决方案 解决方案二:方法很多,可以考虑定义一个用户类,然后存储实例到session中,可以解决你的大部分问题

SharePoint 2013同步Exchange显示高清用户照片

在"SharePoint 2013技巧分享系列 - Active Directory同步显示用户照片"文中介绍了如何同步Active Directory显示用户照片,但是同步完成后,用户照片尺寸和清晰度都不是非常理想.本文将介绍如何同步Exchange Server显示高清用户照片. 原理 与SharePoint Server 2010相似, 在SharePoint Server 2013中存在一个用户照片的目录.当SharePoint启用Exchange照片同步时, SharePoi

使用SQL语句获取SQL Server数据库登录用户权限

server|数据|数据库|用户权限|语句 sp_helprotect返回一个报表,报表中包含当前数据库中某对象的用户权限或语句权限的信息.语法sp_helprotect [ [ @name = ] 'object_statement' ]    [ , [ @username = ] 'security_account' ]    [ , [ @grantorname = ] 'grantor' ]    [ , [ @permissionarea = ] 'type' ]参数[@name =