模拟共享主机信任级别

Posted

技术标签:

【中文标题】模拟共享主机信任级别【英文标题】:Simulating Shared Hosting Trust Levels 【发布时间】:2010-10-16 04:03:44 【问题描述】:

我想在我的开发机器上模拟共享托管环境的信任级别,以便在我部署我的解决方案时不会出现令人讨厌的意外。

我在 web.config 中添加了这个设置:

<trust level="Medium" originUrl="*"/>

唯一的问题是当我尝试保存到我的数据库时遇到此异常:

内部异常: System.Security.SecurityException Message="请求类型的权限 'System.Net.SocketPermission,系统, 版本=2.0.0.0,文化=中性, PublicKeyToken=b77a5c561934e089' 失败的。” 来源="mscorlib"

如何在保持中等“喜欢”信任的同时明确允许这样做。还有其他我可以合理允许的事情吗?我将在 GoDaddy 上托管。

【问题讨论】:

【参考方案1】:

我联系了 Godaddy,得到了回复:

GoDaddy.com ASP.NET 共享主机 服务器使用默认的中信任 水平与添加 OleDbPermission、OdbcPermission 和 限制较少的 WebPermission.

在媒介下运行的应用程序 信任级别没有注册表访问权限, 无法访问 Windows 事件日志, 并且不能使用反射。这样的 应用程序只能与 定义的网络地址范围 并且文件系统访问仅限于 应用程序的虚拟目录 等级制度。请确保您的 应用程序可以在中等信任下工作 如果你有任何环境 有问题。

因此人们可以使用它来指示共享主机权限的一般情况。

当我弄清楚如何按照@blowdards 链接中所述创建这些权限时,我会发布它们。或者如果有人可以发布一个很棒的例子。

【讨论】:

【参考方案2】:

所以你拥有的是默认的中等信任,你看到的错误是正确的。

当然,服务器管理员可以根据自己的喜好进行调整,您只需要准确了解他们对默认信任策略所做的更改即可。您可以按照MSDN 中列出的步骤创建自定义信任级别。现在你需要做的就是找出 Godaddy 对他们做了什么:)

【讨论】:

以上是关于模拟共享主机信任级别的主要内容,如果未能解决你的问题,请参考以下文章

为中等信任级别编译 MVC 应用程序

如何在 .Htaccess 中禁用/不允许共享主机 RewriteLog 时,在 Apache 2 中模拟和测试 URL 重写规则?

共享主机 + 实体框架 + MySQL = 数据提供者错误?

在共享主机上使用 Castle Windsor 和 NHibernate 设施

使用Openfiler2.99为Esxi主机添加iscsi 共享存储

win10主机无法进入本地共享,“没有权限”