我正在使用在IIS 7.5(W2k8 R2)上运行的WCF服务。我使用此服务获取有关同一IIS上指定网站空间的配额信息。
所以我确实将WCF服务充当服务器,并将本地Web应用程序充当客户端。客户端现在要求服务器提供网站文件夹的配额。为此,服务器应使用FsrmQuotaManager
。但是,当服务引用配额管理器时,我得到0x80070005 (Access denied)
。 Web服务使用ApplicationPoolIdentity在其自己的AppPool中运行。
我总是在事件日志中得到DistributedCOM错误(10016),说The machine-default permission settings do not grant Local Activation permission for the COM Server application with CLSID
{90DCAB7F-347C-4BFC-B543-540326305FBE} and APPID {FA3FC5CF-0304-4CAC-99F0-032AC2B15D1E}
to the user MYDOMAIN\someUsername SID (S-1-5-21-1477432904-898564541-3754644009-3102) from address LocalHost (Using LRPC). This security permission can be modified using the Component Services administrative tool.
所以我已经设法在ComponentServices中为这个用户(或者更好的用户所在的组)添加权限,就像我经常阅读的那样在互联网上搜索。现在我不再在事件查看器中收到该错误,但是当我在服务代码中引用FsrmQuotaManager
时,我仍然得到例外。
有没有人对此有所了解?我已经坚持了好几天,而且我的想法已经不多了。使用Process Monitor
无济于事。
答案 0 :(得分:0)
我们终于解决了它
我们不得不模仿使用本地管理员帐户创建FsrmQuotaManager
对象。使用此方法,我们还可以删除以前在ComponentServices中添加的权限。