我听说过很多关于信任级别的事情,人们试图向我解释它,但仍然无法给出一个场景,在这个场景中,我会将一个信任级别应用于另一个信任级别。
我已经通读了MSDN's article,但它对我没有太大帮助。
有没有人可以提供一个真实的例子,说明你什么时候想要使用不同的级别(Full,High,Medium,Low,and Minimal),并解释如果我使用了错误的级别,我会面临什么样的安全风险?
发布于 2010-06-23 00:16:24
This article可能比您正在阅读的技术文档更好地解释了这一点。
这是它最好的部分:
中等信任摘要
对中等信任的Web应用程序的主要限制是:
如果你是一家为人们提供托管服务的ISP,那么想象一下你需要它的地方是一个简单的现实情况。允许任何人编写可以访问文件系统的代码,这意味着任何人都可以在您的服务器上做任何他们想做的事情,您的服务器可能承载着多个客户端。
发布于 2010-06-23 00:15:10
虽然不是专家,但我会给出一个更常见的信任例子,如果你通过共享主机通过某个供应商每月10美元购买主机,在这种情况下,你无法直接访问机器,但可以获得分配的存储空间。在这种情况下,您获得中等信任,通常是因为托管者希望限制您可以执行的操作(确保您不能删除或修改不应该执行的操作),并且不能访问某些资源(例如,尝试读取您有权限的文件夹之外的文件)和其他任务。
我们有完全访问我们的机器,我们托管一个网站,我们给予它完全信任,这对我们来说并不是问题,因为它专用于我们的网站,而不是共享资源。
发布于 2010-06-23 06:06:09
信任级别的问题是,太多的插件需要提升权限,以至于某些类型的应用程序无法在此权限下工作。
我亲眼看到水晶报表和一个超文本标记语言到PDF的转换工具在中等信任下失败了--你的应用程序虚拟目录外的临时文件夹需要FileIOPermission。我也看到过由于某些信任级别而导致TCP套接字连接被阻塞的问题。
实际上,我在去年遇到了一个相当恼人的情况,一个web应用程序需要使用Medium Trust来保证安全性,但写入事件日志也是如此!
幸运的是,您可以覆盖服务器上的machine.config中的信任级别(如果您有权访问它),或者您的web.config中的信任级别(如果您的服务器配置为允许它覆盖machine.config文件)。
但是,这样做有损于固定信任级别的目的。
https://stackoverflow.com/questions/3094797
复制相似问题