IIS7无法授予最低权限请求
我在使用FileHelpers.dll时出现这个错误,但是我的IIS设置为完全信任级别,所以不应该这样
这是完整的堆栈跟踪:
[PolicyException: Required permissions cannot be acquired.] System.Security.SecurityManager.ResolvePolicy(Evidence evidence, PermissionSet reqdPset, PermissionSet optPset, PermissionSet denyPset, PermissionSet& denied, Boolean checkExecutionPermission) +10238142 System.Security.SecurityManager.ResolvePolicy(Evidence evidence, PermissionSet reqdPset, PermissionSet optPset, PermissionSet denyPset, PermissionSet& denied, Int32& securitySpecialFlags, Boolean checkExecutionPermission) +97 [FileLoadException: Could not load file or assembly 'FileHelpers, Version=2.0.0.0, Culture=neutral, PublicKeyToken=3e0c08d59cc3d657' or one of its dependencies. Failed to grant minimum permission requests. (Exception from HRESULT: 0x80131417)] System.Reflection.Assembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, Assembly locationHint, StackCrawlMark& stackMark, Boolean throwOnFileNotFound, Boolean forIntrospection) +0 System.Reflection.Assembly.InternalLoad(AssemblyName assemblyRef, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection) +416 System.Reflection.Assembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection) +166 System.Reflection.Assembly.Load(String assemblyString) +35 System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String assemblyName, Boolean starDirective) +190 [ConfigurationErrorsException: Could not load file or assembly 'FileHelpers, Version=2.0.0.0, Culture=neutral, PublicKeyToken=3e0c08d59cc3d657' or one of its dependencies. Failed to grant minimum permission requests. (Exception from HRESULT: 0x80131417)] System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String assemblyName, Boolean starDirective) +11207304 System.Web.Configuration.CompilationSection.LoadAllAssembliesFromAppDomainBinDirectory() +388 System.Web.Configuration.CompilationSection.LoadAssembly(AssemblyInfo ai) +232 System.Web.Configuration.AssemblyInfo.get_AssemblyInternal() +48 System.Web.Compilation.BuildManager.GetReferencedAssemblies(CompilationSection compConfig) +210 System.Web.Compilation.BuildProvidersCompiler..ctor(VirtualPath configPath, Boolean supportLocalization, String outputAssemblyName) +76 System.Web.Compilation.ApplicationBuildProvider.GetGlobalAsaxBuildResult(Boolean isPrecompiledApp) +283 System.Web.Compilation.BuildManager.CompileGlobalAsax() +50 System.Web.Compilation.BuildManager.EnsureTopLevelFilesCompiled() +676 [HttpException (0x80004005): Could not load file or assembly 'FileHelpers, Version=2.0.0.0, Culture=neutral, PublicKeyToken=3e0c08d59cc3d657' or one of its dependencies. Failed to grant minimum permission requests. (Exception from HRESULT: 0x80131417)] System.Web.Compilation.BuildManager.ReportTopLevelCompilationException() +76 System.Web.Compilation.BuildManager.EnsureTopLevelFilesCompiled() +1012 System.Web.Hosting.HostingEnvironment.Initialize(ApplicationManager appManager, IApplicationHost appHost, IConfigMapPathFactory configMapPathFactory, HostingEnvironmentParameters hostingParameters) +1025 [HttpException (0x80004005): Could not load file or assembly 'FileHelpers, Version=2.0.0.0, Culture=neutral, PublicKeyToken=3e0c08d59cc3d657' or one of its dependencies. Failed to grant minimum permission requests. (Exception from HRESULT: 0x80131417)] System.Web.HttpRuntime.FirstRequestInit(HttpContext context) +11301302 System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext context) +88 System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest wr, HttpContext context) +4338644
我有一个类似的问题,当我用一个干净的Windows 7安装重build我的开发机器。 在四处寻找之后,我发现了一个适合我的解决scheme。
在您的IIS应用程序池高级设置中,在“过程模型”下,将“加载用户configuration文件”设置为true。
还有一些其他的东西需要检查,如你的信任级别,但是没有一个适用于我(这是我的开发机器上已经完全信任)。 设置应用程序池加载用户configuration文件修复它。
在另一个例子中,我看到了这个错误,例如,IIS通过UNCpath(即\\svr\share\folder
)运行应用程序或虚拟path。 即使Load User Profile=true
我仍然有PolicyException错误。 这是通过运行代码访问安全策略工具(Caspol.exe)来完全信任UNCpath来解决的。 由于我们同时拥有64 bit
和32 bit
的.Net 2.x
和.Net 4.x
,我在如下四个环境中运行它:
%SystemRoot%\Microsoft.NET\Framework\v2.0.50727\caspol.exe -pp off -m -ag 1 -url "file:////\\svr\share\folder\*" FullTrust -exclusive on %SystemRoot%\Microsoft.NET\Framework\v4.0.30319\caspol.exe -pp off -m -ag 1 -url "file:////\\svr\share\folder\*" FullTrust -exclusive on %SystemRoot%\Microsoft.NET\Framework64\v2.0.50727\caspol.exe -pp off -m -ag 1 -url "file:////\\svr\share\folder\*" FullTrust -exclusive on %SystemRoot%\Microsoft.NET\Framework64\v4.0.30319\caspol.exe -pp off -m -ag 1 -url "file:////\\svr\share\folder\*" FullTrust -exclusive on
一些注意事项:
- 对于
.Net 4.x
确保将NetFx40_LegacySecurityPolicy设置为true
否则caspol.exe
命令将无法正常工作。 -
对于给定的环境,不要使用
caspol.exe
添加重复的条目。 运行下面的命令来查看您的条目:%SystemRoot%\Microsoft.NET\Framework\v2.0.50727\caspol.exe -a -lg
%SystemRoot%\Microsoft.NET\Framework64\v2.0.50727\caspol.exe -a -lg
%SystemRoot%\Microsoft.NET\Framework\v4.0.30319\caspol.exe -a -lg
%SystemRoot%\Microsoft.NET\Framework64\v4.0.30319\caspol.exe -a -lg
我们有一个与Windows 2008 R2类似的问题,我们的应用程序可以在64位模式下正常工作,但切换到32位模式将停止运行并抛出权限错误,事实certificate,在IIS7下的高级设置>>过程模型>>默认情况下,“身份”设置已切换为“应用程序池标识”,可能需要更改为“networking服务”以32位模式工作。
我们做到了,现在我们顺利地哼着歌。 想象这个信息的珍闻可能是所有人都指向文件夹权限的原因,因为从技术上讲这是一个文件夹权限问题。 但是,更改是在IIS中,而不是文件夹本身的安全设置。
看来,这是一个通用的大会不会加载错误的东西。 我赞赏所有其他职位,因为他们成为错误的可能来源列表。
我发现了一个。 我已经尝试了所有以上都没有成功。 我终于意识到我正在用Visual Studio Express 2008发布Web应用程序,并使用“debugging”的构buildconfiguration。 将构buildconfiguration更改为“发布”后,Web应用程序开始工作。
具体:Visual Studio Express 2008将文件移动到Win 2008 R2服务器上的IIS7.5。
我有类似的问题,我解决了以下步骤的问题:
- 转到IIS。
- 右键点击网站文件夹,看到它的应用程序池。
- 右键单击应用程序池并转到高级设置。
- 在过程模型部分设置
load user profile
为true
她的问题属于使用ddl不信任的SharePoint来解决问题:
- 打开IIS
- 点击.net真正的水平
- select完整(内部)
在您的IIS 6.0应用程序池高级设置中,在“过程模型”下,将“加载用户configuration文件”设置为true。
还有一些其他的东西需要检查,如你的信任级别,但是没有一个适用于我(这是我的开发机器上已经完全信任)。 设置应用程序池加载用户configuration文件修复它。
这有助于解决
需要的权限不能在iis中获得解决..
- Chmod 777到一个文件夹和所有内容
- 运行Ruby命令时,不安全的可写dir / Users /用户名在PATH中,模式040777
- 位掩码(标志)枚举变得太大时该怎么办
- 如何在django中编写自定义装饰器?
- 桌面网页游戏策略更改允许哪些参数?
- 在Android Studio中的AndroidManifest.xml中添加权限?
- 如何通过Amazon EC2将postgresql数据移动到Ubuntu上的另一个目录?
- 如何授予我的应用程序为所有用户创build的文件的完整权限?
- sudo echo“something”>> / etc / privilegedFile不起作用…有没有其他的select?