将FsrmQuotaManager与WCF服务一起使用

时间:2010-12-02 12:51:15

标签: c# wcf iis-7.5

我正在使用在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无济于事。

1 个答案:

答案 0 :(得分:0)

我们终于解决了它 我们不得不模仿使用本地管理员帐户创建FsrmQuotaManager对象。使用此方法,我们还可以删除以前在ComponentServices中添加的权限。