zoukankan      html  css  js  c++  java
  • SharePoint 2013 通过HttpModule 管理视图权限

    HttpModule工作原理

      HttpModule负责监听HttpRequest,当一个HTTP请求到达HttpModule时,整个ASP.NET Framework系统还并没有对这个HTTP请求做任何处理,也就是在此时,我们进行权限的判断,如果没有相关权限导向跳转页面。

    创建HttpModule并部署

      1、打开Visual Studio 2013(当然可以用你所安装的任何版本VS),选择创建新的Project,如下图:

    clip_image001

      2、选择Visual C#节点中Web几点,选择“ASP.NET Web Application”,如下图:

    clip_image002

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

    clip_image003

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

    clip_image004

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

    clip_image005

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

    clip_image006

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

    clip_image007

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

    clip_image008

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

    clip_image009

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

    clip_image010

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

    clip_image011

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

    clip_image012

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

    clip_image013

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

    clip_image014

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

    clip_image015

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

    clip_image016

    总 结

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

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

  • 相关阅读:
    造轮子 | 怎样设计一个面向协议的 iOS 网络请求库
    win7 激活码 秘钥
    python-pptx
    pycharm
    itop 环境
    Ubuntu上安装MongoDB(译)
    python之fabric(二):执行模式(转)
    python之fabric(一):环境env
    Windows下pip安装包报错:Microsoft Visual C++ 9.0 is required Unable to find vcvarsall.bat
    vagrant系列教程(四):vagrant搭建redis与redis的监控程序redis-stat(转)
  • 原文地址:https://www.cnblogs.com/jianyus/p/4725779.html
Copyright © 2011-2022 走看看