关于System.UnauthorizedAccessException: 拒绝访问的处理办法

如果.NET应用程序部署到IIS6.0下面后,如果应用程序进行像Excel读取等操作时,如遇到下面的问题:


拒绝访问

说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.UnauthorizedAccessException: 拒绝访问。

未授权此 ASP.NET 进程访问所请求的资源。出于安全原因,默认的 ASP.NET 进程标识为“{machinename}ASPNET”,它只具有有限的特权。请考虑授予该 ASP.NET 进程标识访问此资源的权限。

若要授予 ASP.NET 对文件的写访问权,请在资源管理器中右击该文件,选择“属性”,然后选择“安全”选项卡。单击“添加”以添加“{machinename}ASPNET”用户。突出显示此 ASP.NET 帐户,在“允许”列中选中“写”框。


IIS 默认应用池中标识的是 "NETWORK SERVICE"


可能是因为DCOM组件中Microsoft Excel组件权限设置问题,请做如下设置:


1.运行里输入"dcomcnfg"设置Excel Application com组件的运行权限.  注意只需要本地权限就可以了, 如本地启动,本地激活。

2.选择要设置的组件,属性.

3.在安全选项卡里全部自定义后加入NETWORK SERVICE的权限


进行以上设置一般可以解决问题。


----------------------------------------附 组件服务 -> 计算机 ->我的电脑(带向下红色箭头)的解决方法

确保以下三个服务正常启动:

Distributed Transaction Coordinator (如果没有启动,请启动,如启动有问题请尝试:cmd:/> msdtc -resetlog)
Remote Procedure Call (RPC)
Security Accounts Manager


已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页