通过 IFD 和 2007 SDK 终结点登录到 Microsoft Dynamics CRM 2011 时收到错误

本文提供了一个解决方法,以确保可以通过 IFD 和 2007 SDK 终结点登录到 Microsoft Dynamics CRM 2011。

适用范围:Microsoft Dynamics CRM 2011
原始 KB 编号: 2642530

症状

配置面向 Internet 的部署后,访问 Microsoft Dynamics CRM 2011 网站时出现以下错误消息:

请求失败,HTTP 401:未授权

此外,尝试使用 IFD 和 2007 (CRM 4.0 - /MSCRMServices/2007/) SDK 终结点对 Microsoft Dynamics CRM 2011 进行身份验证时,还会收到以下错误。

System.Net.WebException:请求失败,HTTP 状态为 401:未授权。
at System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse (SoapClientMessage 消息、WebResponse 响应、Stream responseStream、Boolean asyncCall)
at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke (String methodName、Object[] 参数)
位于 <SDKProject>。CrmSdk.Discovery.CrmDiscoveryService.Execute (请求请求) ...

此外,你可能会在 Microsoft Dynamics CRM 网站的 IIS 日志中看到以下错误 (401.2 未授权) :

POST /MSCRMServices/2007/SPLA/CrmDiscoveryService.asmx - 443 - <ClientRequestingIpAddress> Mozilla/4.0+ (兼容;+MSIE+6.0;+MS+Web+服务+客户端+协议+2.0.50727.4963) 401 2 5 29

原因

如果默认情况下/MSCRMServices/2007/SPLA/,未在 IIS 的目录中为Microsoft Dynamics CRM网站启用匿名身份验证,则可能会出现上述错误。

解决方案

按照以下步骤更改Microsoft Dynamics CRM网站的身份验证设置:

  1. 在 Microsoft Dynamics CRM 服务器上,启动 IIS 管理控制台 (启动>运行>Inetmgr) 。
  2. “Connections”窗格中展开“服务器”。
  3. 展开“站点”。
  4. 展开Microsoft Dynamics CRM。
  5. 展开“MSCRMServices”。
  6. 展开 2007。
  7. 选择 SPLA 目录。
  8. 在中心窗格中,双击“身份验证”。
  9. 右键单击“匿名身份验证”,然后选择“ 启用”。
  10. 关闭 IIS 管理器并尝试再次连接到Microsoft Dynamics CRM。

进行上述更改后,应能够成功访问Microsoft Dynamics CRM网站和 SDk 终结点。