2016-02-26 43 views
2

我們正在嘗試使用他們的A2A頻道向ACS政府網站提交ACA表格。我們能夠使用X509和SHA1來形成XML和所需的加密。IRS ACA提交 - 錯誤TPE1122,WS安全標題在郵件中無效

當發送XML國稅局網站,我們正在誤差The WS Security Header in the message is invalid. Please review the transmission instructions outlined in Section 5 of the AIR Submission Composition and Reference Guide located at https://www.irs.gov/for-Tax-Pros/Software-Developers/Information-Returns/Affordable-Care-Act-Information-Return-AIR-Program, correct any issues, and try again.和錯誤代碼是 - TPE1122

這裏是我們正在嘗試投遞表單了SoapUI

樣本XML部分。 。 。 1094/1095C 應用程序/ XML 843C9A557FC3ABF06EF26C5A4A69E19C Form1094C_Request_TCC_20160225T2003478641Z.xml

</urn:ACATransmitterManifestReqDtl> 
<urn2:ACABusinessHeader oas:Id="ABH_110"> 
    <urn:UniqueTransmissionId>01242fde-536a-4879-b4db-932af7be668e:SYS12:TCC::T</urn:UniqueTransmissionId> 
    <urn1:Timestamp>2016-02-25T17:31:16Z</urn1:Timestamp> 
</urn2:ACABusinessHeader> 
<oas1:Security> 
    <xd:Signature> 
    <xd:SignedInfo xmlns="http://www.w3.org/2000/09/xmldsig#"> 
     <xd:CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315" /> 
     <xd:SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1" /> 
     <xd:Reference URI="#tag1"> 
     <xd:Transforms> 
      <xd:Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" /> 
     </xd:Transforms> 
     <xd:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" /> 
     <xd:DigestValue>j2bX9e90ETVru5w3Q4k0/yOvss4=</DigestValue> 
     </xd:Reference> 
    </xd:SignedInfo> 
    <xd:SignatureValue xmlns="http://www.w3.org/2000/09/xmldsig#">signature_Value</xd:SignatureValue> 
    <xd:KeyInfo xmlns="http://www.w3.org/2000/09/xmldsig#"> 
     <xd:X509Data> 
     <xd:X509SubjectName>subjectName</xd:X509SubjectName> 
     <xd:X509Certificate>certificate details</xd:X509Certificate> 
     </xd:X509Data> 
    </xd:KeyInfo> 
    </xd:Signature> 
    <oas:Timestamp oas:Id="TS_110"> 
    <!--Optional:--> 
    <oas:Created oas:Id="?">2016-02-25T19:40:33.900Z</oas:Created> 
    <!--Optional:--> 
    <oas:Expires oas:Id="?">2016-02-30T19:50:33.900Z</oas:Expires> 
    <!--You have a CHOICE of the next 1 items at this level--> 
    <!--You may enter ANY elements at this point--> 
    </oas:Timestamp> 
</oas1:Security> 
<urn3:ACASecurityHeader> 
</urn3:ACASecurityHeader></soapenv:Header><soapenv:Body> body elements</soapenv:Body> 

能否請你指導我們可能是錯誤的呢?

+0

你能解決這個問題嗎?我也陷入了同樣的錯誤。 – Ravi

回答

1

因此,立即向我跳出來的一件事是您的簽名中只有一個參考。根據AIR提交作文和參考指南,應該總共有3個參考文獻。一個引用你的清單,一個用於商業標題,另一個用於時間戳。

此外,您的引用標記URI引用#tag1,從您發佈的內容中實際上不引用您的XML中的任何元素(除非您的清單的ID無法看到)。您的案例中的參考URI應該是#TS_110,#ABH_110和#whateverYourManifestIDis。希望這可以幫助!

+0

嗨用戶,感謝您解決這個問題。我沒有發佈整個信封,但你的觀點是正確的,國稅局提到3參考URI應該在那裏的標誌,但它不是強制性的。當我們從SOAPUI獲取樣本請求文件時,我們理解了這一點。我們簽署的標籤是#tag1,這在上面的soap中沒有提及,但它存在於信封中。 – Oxygen

+2

那這3部分需要簽名。實際上,您必須具有清單,時間戳和業務頭的引用。 – gottfred

+0

好的。做到這一點,但得到同樣的錯誤,這個錯誤是不恆定的;之後是錯誤代碼 - TPE1126,它顯示「此時無法驗證連接,請稍後再試。」 – Oxygen

2

首先不是所有的元素都被簽名。要簽字的要素是: 1.時間戳 2.清單 3.業務標題

簽名應該按照上述順序。

安全架構的命名空間應該是wsse,時間戳的命名空間應該是wsu。 (不合邏輯的權利?但這就是它的工作原理)與irs指南完全一樣。其他元素的名稱空間別名無關緊要。

您可以嘗試soap ui並查看生成的示例請求。

相關問題