2016-03-09 31 views
0

Hi和感謝採取這一時間看,CRM Online的2015年驗證原始SOAP

我最近一直在問使用CRM Online的2015年調查的整合,我已經遇到了一些問題,嘗試進行身份驗證使用原始SOAP要求。

雖然我知道還有其他方法進行身份驗證,主要是使用CRM SDK,但我的鐵桿會促使我使用Raw SOAP找到解決方案。

我碰到一個非常有用的博客來了賈森拉蒂摩爾:http://jlattimer.blogspot.co.uk/2015/02/soap-only-authentication-using-c.html

繼此示例中,我成功地試用CRM帳戶使用RAW SOAP驗證... ...大...完成我錯了。

只要我指着CRM的發展環境我有一個SOAP錯誤此示例:

<?xml version="1.0" encoding="utf-8" ?> 
<S:Envelope xmlns:S="http://www.w3.org/2003/05/soap-envelope" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:wst="http://schemas.xmlsoap.org/ws/2005/02/trust" xmlns:psf="http://schemas.microsoft.com/Passport/SoapServices/SOAPFault"> 
    <S:Body> 
     <S:Fault> 
      <S:Code> 
       <S:Value>S:Sender</S:Value> 
       <S:Subcode> 
        <S:Value>wst:FailedAuthentication</S:Value> 
       </S:Subcode> 
      </S:Code> 
      <S:Reason> 
       <S:Text xml:lang="en-US">Authentication Failure</S:Text> 
      </S:Reason> 
      <S:Detail> 
       <psf:error> 
        <psf:value>0x80048821</psf:value> 
        <psf:internalerror> 
         <psf:code>0x80047860</psf:code> 
         <psf:text>Direct login to WLID is not allowed for this federated namespace</psf:text> 
        </psf:internalerror> 
       </psf:error> 
      </S:Detail> 
     </S:Fault> 
    </S:Body> 
</S:Envelope> 

我這工作的試用版本和開發環境之間的想法唯一的區別是開發環境安裝程序使用ADFS/AD On-Premises。

提琴手日誌顯示Jason's Sample直接進入login.microsoftonline.com,而CRM SDK(其工作原理)轉到dynamicscrmemea.accesscontrol.windows.net。

所以我相信這是問題所在!我已經在堆棧溢出/其他來源的圈子中出現過,我有一種感覺,它將對SOAP請求進行相對較小的更改,但是我已經達到了需要一些新的眼睛/建議的地步。

有沒有人有過這種設置的經驗?任何人都可以輕輕地將我推向正確的方向嗎?

非常感謝

加雷思

回答

0

我們遇到了類似的問題,試圖創建一個BizTalk整合。最終,我們通過使用Windows Live/Office 365帳戶實際連接,而不是通過針對實際AD進行身份驗證的帳戶解決了此問題。 CRM根據用戶而不是org確定身份驗證類型,因此您可以混合搭配...