在SharePoint里面,不仅有用户的权限,还有代码的权限。比如,我们在安装一个自定义的WebPart的时候,默认的情况下是不能操纵文件夹的,如果你看一些教你怎么做WebPart的文章的话,你会发现很多都会教你修改web.config文件,把它的trust的level改成Full。

<trust level="Full" originUrl="" />

简单的说,这是一句不负责任的句话,意思就是给所有dll以所有的权限,如果你只是在自己机器上做点小实验,那没问题。如果是在正式的项目中,就会造成比较大的安全隐患。

事实上,我们应该为我们的dll赋自定义的权限以杜绝安全隐患。

首先,我们要创建包含自定义权限的config文件。到以下目录C:/Program Files/Common Files/Microsoft Shared/web server extensions/12/CONFIG,找到文件wss_minimaltrust.config,这是微软定义的权限文件,默认用的就是他。拷贝一份,重命名为wss_custom_minimaltrust.config。
找到以下节点:
<CodeGroup 
    class="UnionCodeGroup"
    version="1"
    PermissionSetName="SPRestricted">
    <IMembershipCondition 
        class="UrlMembershipCondition"
        version="1"
        Url="$AppDirUrl$/*"
     />
</CodeGroup>

拷贝他,粘贴到他的前面,将PermissionSetName改为FullTrust,如果你的dll是放在bin目录下,名字叫ss.dll,那么你修改它的Url为"$AppDirUrl$/bin/ss.dll".保存他。

再回到SharePoint的web.config文件,找到trustLevel节点,添加新的节点为
<trustLevel name="WSS_Custom_Minimal" policyFile="C:/Program Files/Common Files/Microsoft Shared/Web Server Extensions/12/config/wss_custom_minimaltrust.config" />

这样我们就把新的权限配置文件加入到了我们的站点中。

在找到trust节点,修改为<trust level="WSS_Custom_Minimal" originUrl="" />

这样我们就启用了我们自定义的权限配置,其他的都没变,只是把ss.dll的权限提高了。

Sharepoint Web.config trust level="Full"权限说明的更多相关文章

  1. 站点 1访问非本站点下面的web.config文件需要的权限

    站点1网站权限,这里就不多介绍了. web.config文件权限 : 需要iis_iusrs (iis权限),  否则没办法访问到

  2. asp.net权限控制配置web.config

    项目下 有三个文件夹 A,B,C 验正方式是 Forms 验正 我要设置他们的访问权限为, A,匿名可访问 B,普通用户授权后才能访问 C,只允许管理员访问 <configuration> ...

  3. asp.net项目中通过Web.config配置文件及文件夹的访问权限!

    描述:在开发中我们通常会碰到这样的问题,例如:在项目的根目录下面有一个文件或者文件夹需要用户登陆后才能访问.如果用户在没有登录的情况下访问该文件或者该文件夹下面的文件时,直接拦截重定向到对应的登陆页面 ...

  4. 基于.net mvc的校友录(五、web.config对的配置以及filter实现的权限控制)

    web.config配置文件 此文件是整个系统的配置中心,它告诉iis服务器本网站需要哪些运行时环境,需要哪些环境,将要进行哪些操作,开发人员也会将一个常量性的数据放在此配置中,以备系统全局调用.此文 ...

  5. Sharepoint 2016 配置FBA(二) 编辑Web,config文件

    使FBA生效,下一步在Sharepoint中设置Membership Provider,一个Membership Provider是一个从程序到任证库(credential store)的接口.这样允 ...

  6. web.config配置详细说明

    (一).Web.Config是以XML文件规范存储,配置文件分为以下格式 1.配置节处理程序声明    特点:位于配置文件的顶部,包含在<configSections>标志中. 2.特定应 ...

  7. Asp.Net 之 Web.config 配置文件详解

    在asp.net中配置文件名一般默认是web.config.每个web.config文件都是基于XML的文本文件,并且可以保存到Web应用程序中的任何目录中.在发布Web应用程序时web.config ...

  8. VS2010中生成遇到的 web.config 问题

    1. 错误:无法在此路径使用此配置节.当站点管理员使用继承的配置文件中的  <location allowOverride="false">  锁定对此节的访问时会出现 ...

  9. Web.Config详细说明

    (一).Web.Config是以XML文件规范存储,配置文件分为以下格式 1.配置节处理程序声明    特点:位于配置文件的顶部,包含在<configSections>标志中. 2.特定应 ...

随机推荐

  1. Python基础笔记系列十一:标准输入输出、文件读写和指针等操作

    本系列教程供个人学习笔记使用,如果您要浏览可能需要其它编程语言基础(如C语言),why?因为我写得烂啊,只有我自己看得懂!! 标准输入输出一.输入 在sublime中这个时候需要安装SublimeRE ...

  2. synchornized实现原理

    synchronized是基于Monitor来实现同步的. Monitor 的工作机理: 线程进入同步方法中. 为了继续执行临界区代码,线程必须获取 Monitor 锁.如果获取锁成功,将成为该监视者 ...

  3. ClipboardJS的坑,

    new 一下构造函数就出错了,为什么...Uncaught TypeError: Cannot read property 'addEventListener' of nullat r (clipbo ...

  4. 为什么U盘在拔出之前需要“安全弹出”?

    前言 我们不知道从什么时候开始有一个观念:U盘一定要点击“安全弹出”才能拔.那么是不是在任何情况下都必须要这样呢? 介绍 U盘的传输策略有两种: 写入缓存:这种策略在windows中称为“更好的性能” ...

  5. svn diff color

    大致有两种方式: 1,在bashrc中添加如下脚本 svndiff() { svn diff "${@}" | colordiff } 2,修改svn的配置文件 $ vim ~/. ...

  6. Zeratul的完美区间(线段树||RMQ模板题)

    原题大意:原题链接 给定元素无重复数组,查询给定区间内元素是否连续 解体思路:由于无重复元素,所以如果区间内元素连续,则该区间内的最大值和最小值之差应该等于区间长度(r-l) 解法一:线段树(模板题) ...

  7. 几款必备LINUX的命令行神器

    Dstat & sar iostat, vmstat, ifstat 三合一的工具,用来查看系统性能(我在<性能调优攻略>中提到过那三个xxstat工具). 官方网站:http:/ ...

  8. neutron源码分析(一)OpenStack环境搭建

    一.OpenStack安装 安装一个初始化的Mitaka版本的OpenStack环境用于分析,neutron源码 序号 角色 IP地址 版本 1 controller 172.16.15.161 mi ...

  9. Java复习1.基本知识

    Java语言概述 20131003 开头语: 开发领域,重要的编程语言基本都是C/C++,然后就是Java, C/C++就不用说了,另外掌握Java对你是有很大的帮助的,而且也会扩宽你的择业范围.同时 ...

  10. Draggable拖动

    Draggable(拖动)组件 学习要点: 1.加载方式 2.属性列表 3.事件列表 4.方法列表 EasyUI中Draggable(拖动)组件的使用方法,这个组件不依赖于其他组件. 1.加载方式 / ...