深入理解NET安全策略.doc

  1. 1、本文档共3页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
深入理解NET安全策略

每个.NET程序集在装载和运行某个重要操作的时候CLR都会验证该程序集是否具备相应的权限。CLR通过成为“证据”的东西来鉴定程序集的身份,再根据身份比对权限配置来授予程序集合适的权限。在执行重要操作之前,例如IO访问,.NET Framework的代码会请求CLR验证调用方代码是否具备合适的权限,下面是一段标准的检查权限的代码 string sFile = @c:\data.txt; CodeAccessPermission codeAccessPermission = new FileIOPermission(FileIOPermissionAccess.AllAccess, sFile); try { codeAccessPermission.Demand(); } catch (SecurityException ex) { MessageBox.Show(ex.Message); } .NET定义了许多标准的证据 可以证明程序集是存储在机器上的某个文件夹下 可以证明程序集是储存在GAC中的 可以证明程序集是来自某个网站 可以证明程序集来自某个URL 可以证明程序集是从某个区域获得 Internet Explorer信任站点 Internet Explorer受限站点 本地局域网 本地计算机 如果发布者使用了验证码技术签署程序集,我们可以根据这个证书生成证据。 如果程序集带有强命名,我们可以根据这个强命名生成证据。 在权限匹配之前,我们必须受限配置计算机的安全策略,在命令行中输入mscorcfg.msc或者在控制面板-管理工具-Microsoft .NET Framework2配置会打开如下的工具 具体的流程如下: 获取程序集证据后,在代码组中查找,找到符合自己条件的代码组。之所以能够找到代码组是因为每个代码组都有匹配条件,例如Trust_Zone的匹配条件就是IE信任站点,下图反映了Trust_Zone的匹配条件 找到代码组后,根据代码组关联的权限及和找到权限集合从而获取该程序集所有的权限 我们当然可以建立自己的权限集,也可以建立自己的代码组,又可以把代码组合权限集关联起来。 其实.NET整个策略可以分为几部分 企业安全策略 计算机安全策略 用户安全策略 而且他们之间的权限取交集,但因为默认情况下企业安全策略和用户安全策略都是Full Trust,因此默认情况下,我们可以忽略企业安全策略和用户安全策略。 命令行工具caspol.exe可以用来配置安全策略,例如下面的命令 Caspol.exe –m –q –cg MyCodeGroup FullTrust 就是把代码组MyCodeGroup赋予FullTrust权限。 再拿我们的Web-CAFIS来说,我们把我们的站点加入信任站点,则我们的程序加载入IE后,CLR加载程序集(自定义控件)之前,获取该控件的证据为Trust_Zone,因此确定该控件属于Trusted_Zone,因此就获得响应的权限,但默认情况下,Trusted_Zone权限不足,因此我们执行脚本文件即Caspol.exe –m –q –cg Trusted_Zone FullTrust来提高信任站点的权限,这样Web-CAFIS就可以通过信任站点获取所需的全部权限。 代码组 权限组 完全信任程序集

文档评论(0)

yaobanwd + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档