转:http://blog.csdn.net/sygwin_net/article/details/6790500

操作环境:SharePoint 2010

关于SharePoint 的权限架构,具体的请查阅其它资料。这里简单的介绍一下,sharepoint 将基础权限分组,然后将组附加给用户或用户组。

默认Sharepoint 以将权限分组:完全控制,设计,参与讨论,读取,首先访问,仅读取 等6组,然后将权限组指定给具体用户或用户组。当然你也可以建自己的权限组。

关于基础权限内容请参考:http://msdn.microsoft.com/zh-cn/library/ms412690

本文介绍如果获取当前登录用户权限(所有操作都是在可视Web部件中进行的):

1.判断当前用户是否具有完全控制权限

  1. SPWeb web=SPContext.Current.Web;
  2. SPRoleDefinitionBindingCollection usersRoles = web.AllRolesForCurrentUser;
  3. SPRoleDefinitionCollection siteRoleCollection = web.RoleDefinitions;
  4. SPRoleDefinition roleDefinition = siteRoleCollection["完全控制"];
  5. if (usersRoles.Contains(roleDefinition))
  6. {
  7. //具有完全控制权限
  8. }
SPWeb web=SPContext.Current.Web;
SPRoleDefinitionBindingCollection usersRoles = web.AllRolesForCurrentUser;
SPRoleDefinitionCollection siteRoleCollection = web.RoleDefinitions;
SPRoleDefinition roleDefinition = siteRoleCollection["完全控制"]; if (usersRoles.Contains(roleDefinition))
{
//具有完全控制权限
}

注意,如果你的sharepoint 版本是英语版本,请将完全控制四个字换成:Full Control

2.判断当前用户所在的组

  1. SPWeb web=SPContext.Current.Web;
  2. SPGroup group = web.Groups["Team Site所有者"];
  3. if (group.ContainsCurrentUser)
  4. {
  5. //当前用户在"Team Site所有者"组内
  6. }
SPWeb web=SPContext.Current.Web;

SPGroup group = web.Groups["Team Site所有者"];
if (group.ContainsCurrentUser)
{
//当前用户在"Team Site所有者"组内
}

注意:如果你的是英文版本,请将Team Site所有者 换成:Team Site Owners

总结:能获取当前用户所在的权限组及用户组,也就知道当前登录用户的权限了。

SharePoint 2010 获取当前用户的权限的更多相关文章

  1. [转]SharePoint 2010/2013 使用Javascript来判断权限的三种方法

    本文讲述SharePoint 2010/2013 使用Javascript来判断权限的三种方法的实现方式及其优缺点. 1. 根据用户所在的SharePoint组(比如用户在Leader 组才可以使用审 ...

  2. SharePoint 2010 加入项目到用户/欢迎菜单

    SharePoint 2010 加入项目到用户/欢迎菜单         近期QQ群里有人问怎样加入链接项目到SharePoint 2010 网站右上角的下拉菜单中.事实上,SharePoint 20 ...

  3. 在SharePoint 2010中创建网站的权限级别

    转:http://www.360sps.com/Item/CreatePermissionLevels.aspx 权限级别是SharePoint 2010新增加的功能,使我们对权限的设置又提高了一个层 ...

  4. SharePoint 2010以其他用户身份登录的弹出代码

    在SharePoint 2010平台中,可以在当前用户登录系统的情况下使用其他用户身份登录,以达到在同一浏览器中切换用户身份的目的. 每个用户登录SharePoint系统之后都会在系统右上角将用户的名 ...

  5. [sharepoint]根据用户名获取该用户的权限

    写在前面 这样的一个场景,客户端请求sharepoint的rest api,但不允许传输用户的密码,使用的是证书认证的方式,但这样所有的用户用的是同一个证书,这样造成的结果就是无法识别该用户是否有操作 ...

  6. SharePoint 2010 获取列表中所有数据(包括文件夹内)的方法

    转: http://blog.csdn.net/wangwenism/article/details/8751411 SharePoint的列表能存储文件以及文件夹,用户使用的时候,经常会建几个分类文 ...

  7. 关于sharepoint 2010无法显示用户中文名的解决方法和详细剖析

    相信这个问题许多做sharepoint的朋友都曾经遇到过,就是本来很正常的中文用户名莫名其妙的变成了“域名\账号”,我本人也遇到过好多次,每次都是百度谷歌一下草草解决问题,始终也没真正去弄明白是怎么回 ...

  8. SharePoint 2010 获取列表全部定义方法

    http://spf06/_vti_bin/owssvr.dll?Cmd=ExportList&List=%7B220128F0-6084-45B3-9942-C29B3AF6663C%7D ...

  9. PowerShell获取当前用户的权限

      function Get-CurrentUserRoles {   $SecurityPrinciple = New-Object -TypeName System.Security.Princi ...

随机推荐

  1. MySQL的alter的使用

    ALTER TABLE 语句用于在已有的表中添加.修改或删除列 1.ADD [COLUMN] column name (column definitions) [FIRST or AFTER colu ...

  2. Linux内核中的常用宏container_of

    Container_of在Linux内核中是一个常用的宏,用于从包含在某个结构中的指针获得结构本身的指针,通俗地讲就是通过结构体变量中某个成员的首地址进而获得整个结构体变量的首地址. Containe ...

  3. 【BZOJ 2005】[Noi2010]能量采集

    Description 栋栋有一块长方形的地,他在地上种了一种能量植物,这种植物可以采集太阳光的能量.在这些植物采集能量后,栋栋再使用一个能量汇集机器把这些植物采集到的能量汇集到一起. 栋栋的植物种得 ...

  4. linux系统日志使用

    FROM:http://blog.csdn.net/zzxian/article/details/7905964 Part I: syslogd & klogd   ---------/etc ...

  5. iOS 支付宝应用(备用参考2)

    接入前期准备工作包括商户签约和密钥配置 步骤1:  启动IDE(如Xcode),把iOS包中的压缩文件中以下文件拷贝到项目文件夹下, 并导入到项目工程中. AlipaySDK.bundle    Al ...

  6. 强连通分量Tarjan模板

    #include<iostream> #include<stdio.h> #include<string.h> #include<stack> #inc ...

  7. shell复习笔记----命令与参数

    shell最基本的工作就是执行命令. 每键入一道命令, shell 就会执行. $cd work;ls -l whizprog.c 首先:格式很简单,以空白(Space 键或者 Tab键)隔开命令行中 ...

  8. Manifest 与TypeTag

    Manifest和TypeTag是要解决什么问题?   As with other JVM languages, Scala’s types are erased at compile time. T ...

  9. android 点击重新加载界面设计

    在项目中经常会遇到这样的场合,用户点击了一个界面后要提示等待加载,最后有可能显示加载失败,点击屏幕再重试加载.下面是该实例的代码: layout: loading.xml <?xml versi ...

  10. IDEA 创建maven-web project失败一例

    今天使用IDEA创建WEB-APP总是失败,经排查原来是MAVEN环境没配置好!!! 配置: M2_HOME--->maven解压目录 path---->%M2_HOME%\bin\