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 Application”,如下图:

  3、选择一个空的template即可,然后点击OK,如下图:

  4、在Project里创建一个新项目,选择ASP.NET Module,输入名字,点击Add,如下图:

  5、在新加的HttpModule项目里,Init方法内添加一个新事件(这个事件是在完成所有Request时执行的),如下图:

  6、在新添加的方法里,添加我们判断的代码,我这里测试的视图地址是/sites/JianYu/DocLibrary/Forms/AllItems.aspx,如果当前用户符合规则,不做任何处理,否则跳转到没有权限的页面。当然,记得引用MicroSoft.SharePoint.dll这个文件;

  7、当然还要创建跳转页面,我们去到页面库,我们看到只有一个找不到页面时候访问的页面,我们添加一个没有权限的页面,如下图:

  8、点击Ribbon菜单上面Files里面New Document,选择Page,如下图:

  9、填写Title和URL Name,然后选择跳转页面的页面布局,点击创建,如下图:

  10、创建完成后,进入页面库,找到我们创建的页面,编辑属性,如下图:

  11、找到跳转URL属性,填写首页地址,如下图:

  12、然后看到这个页面已经创建完毕了,如果需要,可以修饰一下,如下图:

  13、接下来就是部署HttpModule了,找到我们应用程序的web.config,如下图:

  14、找到web.config添加我们HttpModule的注册信息,如下图:

  15、将生产的dll文件,部署到端口下的bin目录下,如下图:

  16、通过浏览器工具,可以看到页面跳转的过程,如下图:

总 结

  当然,我这个权限判断比较简单,如果需要负责的权限管理,可以设计一个权限列表,用来管理页面和用户与组即可,这个都是比较简单的了,呵呵。

  就是一篇比较简单的HttpModule在SharePoint上的应用,SharePoint本身基于Net的,可能还有很多Net的开发方式,可以应用到SharePoint中来,为我们的开发带来便利。

时间: 2024-10-31 01:28:48

SharePoint 2013 通过HttpModule 管理视图权限的相关文章

SharePoint 2013 单一页面赋设计权限

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

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.get

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

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

SharePoint 2013 入门教程

原文:SharePoint 2013 入门教程 以下文章是自己在学习SharePoint的过程中,不断积累和总结的博文,现在总结一个目录,分享给大家.这个博客也是自己从SharePoint入门,到一个SharePoint开发的成长记录,里面记录的都是成长的足迹.在学习的过程中,有过疑惑,有过放弃,有过懊恼,但是经过不断的积累和努力,还是收获颇丰.希望自己把学习过程中的点滴,分享给即将或者已经走入SharePoint的人们,给你们带来帮助. 当然,有些博客是参考其它人的总结,或者对于MSDN示例的

SharePoint 2013 工作流之年假审批Designer配置篇

原文:SharePoint 2013 工作流之年假审批Designer配置篇 本文介绍SharePoint 2013 使用Designer工具,设计年假审批工作流,由于流程所用的条件和操作都比较简单,所以演示为主,最后附流程图和流程的文本图,有兴趣的可以参照实验.如果对于Designer设计工作流的方法不是很熟悉,可以参见本博客的其他文章. 1.新建请假申请列表,创建一张请假申请表,如下图: 2.选中请假申请表,点击工作流: 3.在工作流页面,选中启动工作流: 4.回到列表页,发现工作流已经启动

SharePoint 2013 开启访问请求

1.通常,我们进入SharePoint 2013站点,如果没权限会提示该站点未被共享,而没有切换账号或者申请访问,实在是很流氓:其实,SharePoint为我们提供了访问请求页面,但是可能需要手动开启: 2.如下图,正是SharePoint的访问请求页面,我们可以发送请求原因: 3.首先进入网站设置,然后点击网站权限,也就是Site Permission,如下图: 4.在进入权限设置以后,Ribbon菜单上有Access Request Settings,也就是访问请求设置,如下图: 5.进入以

SharePoint 2013工作流设计:使用Designer的可视化视图

SharePoint 2013增强了工作流功能,而Designer里面也添加了可视化设计视图,也就是类似Visio的设计视图(需要Visio 2013支持),下面我们简单介绍下,在可视化视图下,使用工作流. 1.创建列表工作流,选择"工作流测试列表",如下图: 2.填写工作流名称,选择平台类型,这里我们选择SharePoint 2013 工作流: 3.选择"可视化设计器"视图,如下图: 特:需要安装Visio 2013才可以使用,否则会提示: 4.进入可视化设计器,

SharePoint 2013 工作流设计之Designer 使用“可视化视图”

原文:SharePoint 2013 工作流设计之Designer 使用"可视化视图" SharePoint 2013增强了工作流功能,而Designer里面也添加了可视化设计视图,也就是类似Visio的设计视图(需要Visio 2013支持),下面我们简单介绍下,在可视化视图下,使用工作流. 1.创建列表工作流,选择"工作流测试列表",如下图: 2.填写工作流名称,选择平台类型,这里我们选择SharePoint 2013 工作流: 3.选择"可视化设计器

SharePoint 2013 日历视图兼容性问题

在IE11上访问SharePoint 2013 calendar视图,发现加入兼容性视图以后访问,正常,如下图: 不加入兼容性视图IE11访问,出现兼容性问题,如下图: 因为有些环境有问题,有些环境没有问题,对比了一下,发现打补丁kb3054792,打完补丁,重启即可: 补丁地址:http://www.microsoft.com/zh-cn/download/details.aspx?id=47055 特别的,在解决这个问题之前的疯狂谷歌过程中,发现也有类似情况,要么加入兼容性视图,要么开启浏览