IIS,模拟和COM Interop。没有权限

时间:2010-04-13 16:11:41

标签: iis interop impersonation crm

我们正处于将文档管理系统与Dynamic CRM 4集成的阵痛中。 我们以前做过类似的事情但在这种情况下我们不得不引用一个COM dll。

我们已经配置了asp.net页面(我们通过CRM中的iFrame引入信息),在Impersonation = True中设置Web.config并确保Windows身份验证是唯一可用的方法IIS。

这一切都按照我们在登录服务器时所期望的那样工作;该页面愉快地发现并查找CRM帐户的所有相关文档,并在一个漂亮的Infragistics CRM样式网格中将它们呈现给用户。但是,从客户端工作站尝试此操作,我们得到以下结果:

  

System.Runtime.InteropServices.COMException(0xC0042335):权限被拒绝。

模拟似乎正在传递正确的细节,但到目前为止我们所尝试的任何内容都无法在登录服务器之外完成此工作。对于我们缺少的东西有任何想法吗?

1 个答案:

答案 0 :(得分:1)

这可能是一个多跳Kerberos问题。文档管理系统是否存在于另一台物理服务器上?如果是这样,您可能需要在Active Directory中的计算机帐户上启用委派,假设您使用默认设置(运行应用程序池的网络服务)安装了CRM。模拟与委派不同 - 模拟仅在访问本地服务器上的资源时有效。如果您代表用户访问其他服务器上的资源,则还需要启用委派。这是一个链接,向您展示如何:

http://alt.pluralsight.com/wiki/default.aspx/Keith.GuideBook/WhatIsDelegation.html

进行这些更改后,请让AD管理员强制进行复制,然后注销并重新登录到工作站以刷新Kerberos票证缓存。