Win Server 2012R2是否需要调用CRM 2011 OnPrem Web服务?

时间:2015-01-02 23:25:38

标签: dynamics-crm-2011 dynamics-crm crm dynamics-crm-2013

我们在Windows Server 2008R2上运行了2011 / R18 CRM On Prem。内部的另一个组正在尝试调用SOAP组织端点。他们收到HTTP 401错误。经过大量的网页浏览后,我现在想知道,由于某些原因我不太了解,我们是否需要我们的CRM服务器在服务器2012 R2上运行?我这样说是因为this article。本文适用于CRM 2013,但有人可以解释为什么需要Windows Server 2012R2?

相关文章是:

  

技术依赖

     

开发和执行外部需要以下技术   使用Microsoft Dynamics CRM进行身份验证的客户端应用程序   OData和SOAP Web服务端点:

Claims configuration is required for on-premises deployment.

AD FS on Windows Server 2012 R2.

我们的设置是crm 2011 app服务器与crm db服务器分开。 对于Web服务调用,我们有一个具有crm sysadmin权限的专用用户

我们的问题是网络服务/身份验证问题。我习惯使用username / pwd在C#应用程序中进行Web服务调用,但是使用相同的用户名/ pwd组合进行显式SOAP over HTTPS调用时遇到了极大的困难。我应该提一下我们的设置使用集成安全性,即如果我登录到我们的域,打开浏览器并转到crm,我不必登录,即它使用我用来登录机器的凭据。

我使用SOAPUI 5.0.0作为客户端。以下是SOAPUI设置的详细信息。我能够在wcfTestClient.exe中成功执行请求(虽然我不知道为什么)但是无法在SOAPUI中获得相同的请求。

请求(注意:使用有效值,我应该从获取获得1个结果)

<s:Envelope xmlns:a="http://www.w3.org/2005/08/addressing" xmlns:s="http://www.w3.org/2003/05/soap-envelope">
  <s:Header>
    <a:Action s:mustUnderstand="1">http://schemas.microsoft.com/xrm/2011/Contracts/Services/IOrganizationService/RetrieveMultiple</a:Action>
    <a:MessageID>urn:uuid:1fa4d6ce-6dcc-470e-af92-7be3b79990cf</a:MessageID>
    <a:ReplyTo>
      <a:Address>http://www.w3.org/2005/08/addressing/anonymous</a:Address>
    </a:ReplyTo>
  </s:Header>
  <s:Body>
    <RetrieveMultiple xmlns="http://schemas.microsoft.com/xrm/2011/Contracts/Services">
      <query xmlns:d4p1="http://schemas.microsoft.com/xrm/2011/Contracts" xmlns:i="http://www.w3.org/2001/XMLSchema-instance" i:type="d4p1:FetchExpression">
        <d4p1:Query>&lt;?xml version="1.0"?&gt;&lt;fetch distinct="false" mapping="logical" output-format="xml-platform" version="1.0"&gt;&lt;entity name="contact"&gt;&lt;attribute name="contactid"/&gt;&lt;filter type="and"&gt; &lt;condition attribute="telephone1" value="<**a valid value here>**" operator="eq"/&gt; &lt;/filter&gt;&lt;/entity&gt;&lt;/fetch&gt;</d4p1:Query>
      </query>
    </RetrieveMultiple>
  </s:Body>
</s:Envelope>

回复

HTTP/1.1 401 Unauthorized
Cache-Control: private
Transfer-Encoding: chunked
Content-Type: text/plain
Server: Microsoft-IIS/7.5
X-AspNet-Version: 4.0.30319
WWW-Authenticate: NTLM
WWW-Authenticate: Negotiate
X-Powered-By: ASP.NET
Date: Thu, 08 Jan 2015 03:59:11 GMT

HTTP Error 401 - Unauthorized: Access is denied

SOAP Request Properties

SOAP Request Auth Details

SOAP Request Headers

1 个答案:

答案 0 :(得分:0)

不需要在Windows Server 2012 R2上为CRM 2011 / R18运行CRM。

您的问题应该是在调用Web服务时对CRM上的用户进行身份验证。应用程序是否与CRM托管在同一台服务器上?如果没有,您可以从自定义应用程序服务器访问CRM吗?巫婆用户请求访问?

请检查以上几点,以确定问题是在CRM还是自定义应用程序中。