trust level="Full"(转)
来源:互联网 发布:淘宝币换阿里小号 编辑:程序博客网 时间:2024/05/29 12:47
在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的权限提高了。
- trust level="Full"(转)
- The default ASP.NET Trust level
- How to run WPF - XBAP as Full Trust Application
- trust
- InfoPath与SharePoint之(七)发布InfoPath到Central Administration-准备Full Trust的Template
- How to run WPF - XBAP as Full Trust Application(如何运行WPF -作为完全信任的应用XBAP)
- SmartInspect 1.3 with Full Log Level Support Released
- Fixing the security exception : "class /"" + packageName + "/" does not match trust level of other classes in the same package"
- (转)Full Stack Engineer
- python操作符 is,== 详解 (Trust Me)
- Trust Rank
- Building Trust
- trust me
- trust me
- grid_C vs. Trust _Computing
- P2P Trust Paper Reference
- 智囊团 Brain trust
- Reflections on Trusting Trust
- 读了两本关于C++程序性能优化的书
- DFM是中文程序如何在英文操作系统不乱码?
- Firefox 3.0 β3完工 至少还会有一个Beta
- 戴尔春节促销商用笔记本首次跌破4000元
- [ZT]如何修复linux硬盘坏块(bad block howto)
- trust level="Full"(转)
- subversion commit 报错A checksum mismatch occurred svn: Commit failed (details follow): svn: “/xxx/xxxx/xxx.hbm.xml”的基校验和不匹配:
- Salvation
- Cisco路由器是怎样被攻陷的--SolarWinds2002的简单使用
- C#.Net笔记其之一
- Java、Java Applet与 JavaScript间的通信_【孟子E章】
- 2008-2-4大盘分析
- 下载者+(原代码)
- 2007“奥普迪杯”开放式实时在线辞典系统设计大赛