首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 企业软件 > 行业软件 >

获取用户权限,该怎么处理

2013-12-19 
获取用户权限求教用item.GetUserEffectivePermissions(username)得出的结果是很细的权限信息(例如:查看网

获取用户权限
求教用item.GetUserEffectivePermissions(username)得出的结果是很细的权限信息(例如:查看网页,删除项目,查看项目,批准项目一大串)
怎样才能得出类似 完全控制 参与讨论 设计  这种权限组的权限信息?
[解决办法]
用SPRoleDefinition: http://sharepoint.stackexchange.com/questions/54691/how-to-find-permission-level-for-specific-user-using-visual-studio
[解决办法]
就组和当前权限 。。

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


SPWeb web=SPContext.Current.Web;  

SPRoleDefinitionBindingCollection usersRoles = web.AllRolesForCurrentUser;  

SPRoleDefinitionCollection siteRoleCollection = web.RoleDefinitions;  

SPRoleDefinition roleDefinition = siteRoleCollection["完全控制"];    

if (usersRoles.Contains(roleDefinition))  

  {                 

     //具有完全控制权限  

  }  

SPWeb web=SPContext.Current.Web;

SPRoleDefinitionBindingCollection usersRoles = web.AllRolesForCurrentUser;

SPRoleDefinitionCollection siteRoleCollection = web.RoleDefinitions;

SPRoleDefinition roleDefinition = siteRoleCollection["完全控制"];

if (usersRoles.Contains(roleDefinition))

{

//具有完全控制权限

}

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

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


SPWeb web=SPContext.Current.Web;    

SPGroup group = web.Groups["Team Site所有者"];  

if (group.ContainsCurrentUser)  

{  

   //当前用户在"Team Site所有者"组内  

}  

SPWeb web=SPContext.Current.Web;

SPGroup group = web.Groups["Team Site所有者"];

if (group.ContainsCurrentUser)

{

//当前用户在"Team Site所有者"组内

}

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

热点排行