【问题标题】:SecurityException: Request for the permission of type AspNetHostingPermission failedSecurityException: 请求 AspNetHostingPermission 类型的权限失败
【发布时间】:2010-12-10 18:26:41
【问题描述】:

设置一个新的开发工作站,当我从 Visual Studio 2008 运行 ASP.NET (MVC) 应用程序时,我得到一个 SecurityException。任何想法可能是什么问题?

我正在通过 SMB 访问数据文件(它是作为 Z 挂载的共享文件:),我通过运行完全信任它

caspol -m -ag 1 -url "\\server\share\" FullTrust -exclusive on

完整的回溯是:

“/”应用程序中的服务器错误。

安全异常

说明:应用程序试图执行不允许的操作 安全策略。授予此应用程序所需的权限 请联系您的系统管理员或更改 应用程序在配置文件中的信任级别。

异常详情:
System.Security.SecurityException: 请求“System.Web.AspNetHostingPermission”类型的权限, 系统,版本=2.0.0.0,文化=中性,PublicKeyToken=b77a5c561934e089' 失败。

来源错误:

当前执行过程中产生了一个未处理的异常 网络请求。有关异常起源和位置的信息 可以使用下面的异常堆栈跟踪来识别。

堆栈跟踪:

[SecurityException: 请求类型的权限 'System.Web.AspNetHostingPermission,系统,版本=2.0.0.0, 文化=中性,PublicKeyToken=b77a5c561934e089' 失败。]
System.Reflection.Assembly._GetType(字符串名称,布尔 throwOnError,布尔 忽略大小写)+0
System.Reflection.Assembly.GetType(字符串名称,布尔 throwOnError,布尔 忽略大小写)+42
System.Web.UI.Util.GetTypeFromAssemblies(ICollection 程序集,字符串类型名称,布尔忽略大小写)+145
System.Web.UI.TemplateParser.GetType(字符串 typeName,布尔型 ignoreCase,布尔型 throwOnError) +73
System.Web.UI.TemplateParser.ProcessInheritsAttribute(字符串 baseTypeName,字符串 codeFileBaseTypeName,String src, 组装组装)+111
System.Web.UI.TemplateParser.PostProcessMainDirectiveAttributes(IDictionary 解析数据)+279

版本信息: Microsoft .NET 框架版本:2.0.50727.4927; ASP.NET 版本:2.0.50727.4927

【问题讨论】:

    标签: asp.net asp.net-mvc code-access-security securityexception trust


    【解决方案1】:

    您是否使用指向远程共享的虚拟目录?
    http://support.microsoft.com/?id=320268

    另请参阅“解决 ASP.NET 中的常见权限和安全相关问题”
    http://support.microsoft.com/?id=910449

    【讨论】:

    • 是的,我是。您知道该链接中的 Web 服务器是否指的是 IIS?因为我正在使用 Casini 进行开发。
    • 那个链接是指 IIS,但我认为 Casini 也有同样的限制。您是否尝试将 FullTrust 权限授予远程共享?
    • 我不怀疑 Casini 也有同样的限制,我只是不知道如何解决它。如何将 FullTrust 授予远程共享?
    • 我尝试使用 caspol -m -ag 1 -url “\\server\share\” FullTrust -exclusive 给予完全信任,但没有任何改变。
    【解决方案2】:

    这是一个对我有用的命令:

    C:\Windows\System32>C:\Windows\Microsoft.NET\Framework\v2.0.50727\caspol.exe -m -ag 1 -url "http://localhost/*" FullTrust

    【讨论】:

    • 我得到:错误:操作无效:m 错误:无效选项:m
    • 好的,我尝试从上面复制粘贴。它不起作用的原因是因为 m 之前的连字符不是真正的连字符。
    猜你喜欢
    • 2012-12-01
    • 2012-08-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-29
    • 2011-07-31
    • 1970-01-01
    相关资源
    最近更新 更多