`

ASP.NET中等安全级别

 
阅读更多

原文:http://www.gzidc.com/faq.php?action=view&id=723&Itemid=38

 

ASP.NET中等安全级别


ASP.NET中等安全级别

 

ASP.NET运行模式的权限说明图:

 

 

 

ASP.NET的默认运行模式是FULL TRUST 级别,在该级别下.NET程序拥有极高的权限执行程序或者代码。但是让程序运行在该模式下是十分危险的,黑客可以轻易地利用你的程序进行提权。国外空间,比如GoDaddy通常会把ASP.NET代码执行权限控制在中等安全模式。我司决定将ASP.NET的运行模式调为中等信任级别。

 

中等安全模式会有哪些影响?

以下是在ASP.NET中等安全模式下曾经遇到过的一些问题:
1. 
基于VirtualPathProvider的模板机制不能用,因为VirtualPathProvider至少需要运行在High模式。
2. BuildProvider
不能用,意味着你想自己添加自己的语言实现也不能用了,不过大部分项目不会用到这么高级的东西。
3. CodeDom
Emit不能用了,这下惨了,什么IocAOP,动态注入的高科技玩意儿,全都废了,这些不是基于CodeDom的就是基于Emit的。
4. 
通过aspx页面接管文件下载也不行了,Response写文件流到客户端需要更高的代码执行权限。
5. 
大文件上传也别想了,因为大文件上传万变不离HttpWorkRequst,获取HttpWorkRequst的代码需要FullTrust模式。
6. SQLite
不能用了,因为中等安全模式下没有非托管代码调用权限,所以除了SQLite外,涉及到非托管代码调用的,也都废掉了。
所以,如果要考虑允许让用户把程序部署到中等安全模式下,那就越早做中等安全模式的兼容性测试越好。
因为很多不能用的东西,都是涉及到基础结构的。

比如,文件下载不能通过Response写文件流的方式,你的程序正巧又是这么做防盗链,咋办?

答:用.htaccess做伪静态。

 

中等信任级别的主要限制:

不能调用非托管代码
不能调用服务组件
不能写事件日志
不能访问 Microsoft 消息队列
文件访问仅限于当前应用程序目录

注册表访问是不允许的

 

如果因为调整了安全级别导致您的网站出现访问异常的问题,请根据信任级别的限制调整您的程序。

以下是判断程序是否运行在中等安全模式的代码:

1

2

3

if (SecurityManager.IsGranted(new AspNetHostingPermission(AspNetHostingPermissionLevel.Medium)))

{

}

如果有遇到不是必须执行的逻辑,比如获取程序内存占用率或者大文件上传,那就可以先判断下,再决定是否调用。

分享到:
评论

相关推荐

    ASP.NET的安全登录

    ASP.NET的安全登录 ASP.NET的安全登录 ASP.NET的安全登录

    ASP.NET入门经典ASP.NET入门经典ASP.NET入门经典ASP.NET入门经典ASP.NET入门经典ASP.NET入门经典

    ASP.NET入门经典ASP.NET入门经典ASP.NET入门经典ASP.NET入门经典ASP.NET入门经典ASP.NET入门经典ASP.NET入门经典ASP.NET入门经典ASP.NET入门经典ASP.NET入门经典ASP.NET入门经典ASP.NET入门经典ASP.NET入门经典ASP...

    ASP.NET中等安全模式的一些经验分享

    非通用型的Web程序或产品,通常不会和ASP.NET中等安全模式打交道,因为面对的用户群体会比较固定,或者部署环境是可以由程序提供者决定的。 但在做通用型的Web产品的时候,你就要和各种人打交道了,有的站长用的是...

    asp.net的ppt

    asp.net教程asp.net教程asp.net教程asp.net教程asp.net教程asp.net教程asp.net教程asp.net教程asp.net教程asp.net教程asp.net教程asp.net教程asp.net教程asp.net教程asp.net教程asp.net教程asp.net教程asp.net教程...

    asp.net教程 ASP.NET 参考手册

    ASP.NET 参考手册 在 W3School,我们提供完整的 ASP.NET 参考手册,其中包括内建对象和组件,以及它们的属性和方法。 ASP.NET 实例 ASP.NET 实例 一系列的 ASP.NET 实例。 内容目录 ASP.NET 简介 本章解释 ASP.NET...

    ASP.net实战项目

    ASP.net实战项目ASP.net实战项目ASP.net实战项目ASP.net实战项目ASP.net实战项目ASP.net实战项目ASP.net实战项目ASP.net实战项目ASP.net实战项目ASP.net实战项目ASP.net实战项目ASP.net实战项目ASP.net实战项目ASP...

    ASP.NET 完全入门

    ASP.NET与Windows 2000 Server/Advanced Server的完美组合,为中小型乃至企业级的web商业模型提供了一个更为稳定,高效,安全的运行环境。 正是基于上面的激动人心的理由,我们编写了这样一本书

    asp.net经典聊天室

    asp.net经典聊天室asp.net经典聊天室asp.net经典聊天室asp.net经典聊天室asp.net经典聊天室asp.net经典聊天室asp.net经典聊天室asp.net经典聊天室asp.net经典聊天室asp.net经典聊天室asp.net经典聊天室asp.net经典...

    基于ASP.NET的安全登录系统的实现

    介绍了ASP.NET安全体系结构.分析了ASP.NET应用程序中登录系统的验证流程和页面请求流程。给出了加密模块的具体的实现方法

    asp.net排课系统

    asp.net 排课 系统asp.net 排课 系统asp.net 排课 系统asp.net 排课 系统asp.net 排课 系统asp.net 排课 系统asp.net 排课 系统asp.net 排课 系统asp.net 排课 系统

    ASP.NET教程 ASP.NET教程

    asp .net 教程asp .net 教程asp .net 教程asp .net 教程

    ASP.NET 4.5入门经典:涵盖C#和VB.NET(第7版) 源码

    这是第六版的介绍《ASP.NET 4入门经典:涵盖C#和VB.NET(第6版)》内容简介:ASP.NET是.NET Framework的一部分,用于构建内容丰富的动态Web站点。其最新的版本ASP.NET 4对上一版进行了许多改进,包括增强了Web窗体,并...

    ASP.NET文件参考 asp.net asp.net技巧

    ASP.NET文件参考 asp.net asp.net技巧

    ASP.Net Core 5.0官方文档.pdf

    ASP.NET core 5.0文档PDF(含目录,共5453页)。摘要: ASP.NET Core 文档及新增内容 ASP.NET 比较 .NET Core 和 .NET Framework 入门新增功能 5.0 版中的新增功能 3.1/3.0/2.2/2.1/2.0/1.1 版中的新增功能 教程Web ...

    Programming ASP.NET 中文版第三版(ASP.NET入门权威书籍PDF+源码) part1

    上传人提醒:本书适合了解c#语法的人阅读,看这本书前建议先看C#入门经典 ...本书对于ASP.NET 2.0技术和Visual Studio 2005进行了全面讲解,出色地囊括了读者在实际编程中会用到的ASP.NET的重要特性,十分适合中级读者。

    Programming ASP.NET 中文版第三版(ASP.NET入门权威书籍PDF+源码) part3

    上传人提醒:本书适合了解c#语法的人阅读,看这本书前建议先看C#入门经典 ...本书对于ASP.NET 2.0技术和Visual Studio 2005进行了全面讲解,出色地囊括了读者在实际编程中会用到的ASP.NET的重要特性,十分适合中级读者。

    Asp.Net MVC案例教程

    Asp.Net MVC案例教程 Asp.Net MVC案例教程 Asp.Net MVC案例教程 Asp.Net MVC案例教程 Asp.Net MVC案例教程 Asp.Net MVC案例教程

    asp.net 按钮级别权限自定义控件

    asp.net实现按钮级别的权限操作,采用自定义控件方式实现

    ASP.net源码asp.net

    ASP.net源码asp.netASP.net源码asp.netASP.net源码asp.netASP.net源码asp.netASP.net源码asp.netASP.net源码asp.netASP.net源码asp.netASP.net源码asp.netASP.net源码asp.netASP.net源码asp.net

    asp.net cookie 查看的源码

    asp.net cookie 查看的源码 asp.net cookie 查看的源码 asp.net cookie 查看的源码 asp.net cookie 查看的源码 asp.net cookie 查看的源码 asp.net cookie 查看的源码 asp.net cookie 查看的源码 asp.net cookie ...

Global site tag (gtag.js) - Google Analytics