每当我尝试通过A2A提交给IRS时,我都会收到TPE 1105。我浏览过肥皂的例子,还多次研究过wsd,并且无法弄清楚是什么原因导致了这个问题。
如果您有任何见解,我将非常感激最终将1105投入使用。
POST [AATS_URL] HTTP/1.1
Content-Encoding: gzip
Accept-Encoding: gzip,deflate
Content-Type: multipart/related; type="application/xop+xml"; start="<root_part>"; boundary="--=_part_85c4167d-966b-4dfd-b6f9-c7a5aa410517"; start-info="text/xml"
SOAPAction: "BulkRequestTransmitter"
MIME-Version: 1.0
Accept: text/xml,multipart/related
Expect: 100-continue
Cache-Control: no-cache
Pragma: no-cache
User-Agent: Java/1.8.0_111
Host: la.www4.irs.gov
Connection: keep-alive
Content-Length: 16299
----=_part_85c4167d-966b-4dfd-b6f9-c7a5aa410517
Content-Type: application/xop+xml; charset=UTF-8; type="text/xml"
Content-Transfer-Encoding: 8bit
Content-Id: <root_part>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<soapenv:Envelope xmlns:air="urn:us:gov:treasury:irs:ext:aca:air:ty18" xmlns:com="urn:us:gov:treasury:irs:common" xmlns:hdr="urn:us:gov:treasury:irs:msg:acabusinessheader" xmlns:oas1="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:req="urn:us:gov:treasury:irs:msg:irsacabulkrequesttransmitter" xmlns:sec="urn:us:gov:treasury:irs:msg:acasecurityheader" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header xmlns:wsa="http://www.w3.org/2005/08/addressing">
<wse:Security xmlns:wse="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" Id="SH-3f88e9e4-c4ea-4473-ad04-0b567e2a4bf7">
<ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#" Id="SIG-3f88e9e4-c4ea-4473-ad04-0b567e2a4bf7">
<ds:SignedInfo>
<ds:CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#WithComments"/>
<ds:SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#rsa-sha256"/>
<ds:Reference URI="#TS-3f88e9e4-c4ea-4473-ad04-0b567e2a4bf7">
<ds:Transforms>
<ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#WithComments">
<ds:InclusiveNamespaces xmlns:ds="http://www.w3.org/2001/10/xml-exc-c14n#" PrefixList="wse wsa osa1 soapenv air com hdr sec req"/>
</ds:Transform>
</ds:Transforms>
<ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/>
<ds:DigestValue>FqYS/pHdN05mKKccxqM4jmEwJNRR+ikRPB7HuyvbGQY=</ds:DigestValue>
</ds:Reference>
<ds:Reference URI="#MH-3f88e9e4-c4ea-4473-ad04-0b567e2a4bf7">
<ds:Transforms>
<ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#">
<ds:InclusiveNamespaces xmlns:ds="http://www.w3.org/2001/10/xml-exc-c14n#" PrefixList="wse wsa osa1 soapenv com hdr sec req"/>
</ds:Transform>
</ds:Transforms>
<ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/>
<ds:DigestValue>qlWuAbD2PwDmvK7/KzU56ZWsKhBH2PYW/v2eW/30/4E=</ds:DigestValue>
</ds:Reference>
<ds:Reference URI="#BH-3f88e9e4-c4ea-4473-ad04-0b567e2a4bf7">
<ds:Transforms>
<ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#">
<ds:InclusiveNamespaces xmlns:ds="http://www.w3.org/2001/10/xml-exc-c14n#" PrefixList="wse wsa osa1 soapenv air com sec req"/>
</ds:Transform>
</ds:Transforms>
<ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/>
<ds:DigestValue>E2cw4uavSk8RGQeewG04q3tcBRwM6dnMQmSctdJl4k8=</ds:DigestValue>
</ds:Reference>
</ds:SignedInfo>
<ds:SignatureValue>[SIGNATURE_VALUE]</ds:SignatureValue>
<ds:KeyInfo Id="KI-3f88e9e4-c4ea-4473-ad04-0b567e2a4bf7">
<wse:SecurityTokenReference wsu:Id="STR-3f88e9e4-c4ea-4473-ad04-0b567e2a4bf7">
<wse:KeyIdentifier EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary" ValueType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3">[CERT_VALUE]</wse:KeyIdentifier>
</wse:SecurityTokenReference>
</ds:KeyInfo>
</ds:Signature>
<wsu:Timestamp wsu:Id="TS-3f88e9e4-c4ea-4473-ad04-0b567e2a4bf7">
<wsu:Created>2019-02-15T15:41:01Z</wsu:Created>
<wsu:Expires>2019-02-15T15:51:01Z</wsu:Expires>
</wsu:Timestamp>
</wse:Security>
<air:ACATransmitterManifestReqDtl xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" wsu:Id="MH-3f88e9e4-c4ea-4473-ad04-0b567e2a4bf7">
<air:PaymentYr>2018</air:PaymentYr>
<air:PriorYearDataInd>0</air:PriorYearDataInd>
<com:EIN>[REDACTED]</com:EIN>
<air:TransmissionTypeCd>O</air:TransmissionTypeCd>
<air:TestFileCd>T</air:TestFileCd>
<air:TransmitterForeignEntityInd>0</air:TransmitterForeignEntityInd>
<air:TransmitterNameGrp>
<air:BusinessNameLine1Txt>[REDACTED]</air:BusinessNameLine1Txt>
</air:TransmitterNameGrp>
<air:CompanyInformationGrp>
<air:CompanyNm>[REDACTED]</air:CompanyNm>
<air:MailingAddressGrp>
<air:USAddressGrp>
<air:AddressLine1Txt>[REDACTED]</air:AddressLine1Txt>
<com:CityNm>[REDACTED]</com:CityNm>
<air:USStateCd>[REDACTED]</air:USStateCd>
<com:USZIPCd>[REDACTED]</com:USZIPCd>
</air:USAddressGrp>
</air:MailingAddressGrp>
<air:ContactNameGrp>
<air:PersonFirstNm>[REDACTED]</air:PersonFirstNm>
<air:PersonMiddleNm>[REDACTED]</air:PersonMiddleNm>
<air:PersonLastNm>[REDACTED]</air:PersonLastNm>
</air:ContactNameGrp>
<air:ContactPhoneNum>[REDACTED]</air:ContactPhoneNum>
</air:CompanyInformationGrp>
<air:VendorInformationGrp>
<air:VendorCd>I</air:VendorCd>
<air:ContactNameGrp>
<air:PersonFirstNm>[REDACTED]</air:PersonFirstNm>
<air:PersonMiddleNm>[REDACTED]</air:PersonMiddleNm>
<air:PersonLastNm>[REDACTED]</air:PersonLastNm>
</air:ContactNameGrp>
<air:ContactPhoneNum>[REDACTED]</air:ContactPhoneNum>
</air:VendorInformationGrp>
<air:TotalPayeeRecordCnt>2</air:TotalPayeeRecordCnt>
<air:TotalPayerRecordCnt>1</air:TotalPayerRecordCnt>
<air:SoftwareId>[REDACTED]</air:SoftwareId>
<air:FormTypeCd>1094/1095B</air:FormTypeCd>
<com:BinaryFormatCd>application/xml</com:BinaryFormatCd>
<com:ChecksumAugmentationNum>25fbebd1143d8aa935a445db998eb374761113af8b17d67b3a95af9ad73e17bc</com:ChecksumAugmentationNum>
<com:AttachmentByteSizeNum>7245</com:AttachmentByteSizeNum>
<air:DocumentSystemFileNm>1094B_Request_[TCC]_20190215T154101026Z.xml</air:DocumentSystemFileNm>
</air:ACATransmitterManifestReqDtl>
<hdr:ACABusinessHeader xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" wsu:Id="BH-3f88e9e4-c4ea-4473-ad04-0b567e2a4bf7">
<air:UniqueTransmissionId>3f88e9e4-c4ea-4473-ad04-0b567e2a4bf7:SYS12:[TCC]::T</air:UniqueTransmissionId>
<com:Timestamp>2019-02-15T15:41:01Z</com:Timestamp>
</hdr:ACABusinessHeader>
<sec:ACASecurityHeader>
<hdr:UserId>[REDACTED]</hdr:UserId>
</sec:ACASecurityHeader>
<wsa:Action>BulkRequestTransmitterService</wsa:Action>
</soapenv:Header>
<soapenv:Body>
<req:ACABulkRequestTransmitter version="1.0">
<com:BulkExchangeFile>
<xop:Include xmlns:xop="http://www.w3.org/2004/08/xop/include" href="cid:1094B_Request_[TCC]_20190215T154101026Z.xml"/>
</com:BulkExchangeFile>
</req:ACABulkRequestTransmitter>
</soapenv:Body>
</soapenv:Envelope>
----=_part_85c4167d-966b-4dfd-b6f9-c7a5aa410517
Content-Type: application/xml
Content-Transfer-Encoding: 7bit
Content-Id: <1094B_Request_[TCC]_20190215T154101026Z.xml>
Content-Disposition: attachment; filename="1094B_Request_[TCC]_20190215T154101026Z.xml"
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<msg:Form109495BTransmittalUpstream xmlns:air="urn:us:gov:treasury:irs:ext:aca:air:ty18" xmlns:com="urn:us:gov:treasury:irs:common" xmlns:msg="urn:us:gov:treasury:irs:msg:form1094-1095Btransmitterupstreammessage" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:us:gov:treasury:irs:msg:form1094-1095Btransmitterupstreammessage ../MSG/IRS-Form1094-1095BTransmitterUpstreamMessage.xsd">
[REMOVED TO SAVE SPACE]
</msg:Form109495BTransmittalUpstream>
----=_part_85c4167d-966b-4dfd-b6f9-c7a5aa410517--
我们将使用Java中的核心org.w3c.dom文档库以及用于签名和验证的java xml dsig库,手动生成这些肥皂信封。
编辑-我设法通过了1105,现在遇到了1122“ WS安全标题错误”。我已经阅读了许多文档,试图验证我所能做的一切,但仍在努力。我有一些未知数-
在KeyIdentifier元素内到底期望什么?我已经尝试了cert和公共密钥的base64编码字节,但是来自oasis的x509v3令牌文档并不完全具有描述性,或者也许我只是误读了它们。
有没有办法验证我的引用是正确的?我看到了它们,所以这意味着它们是正确创建的,不是吗?
如果您碰巧看到带有安全标头的异常情况,请告诉我。当前,此传输代码与正在通过1105且未通过1122的事件(减去格式化)相同。
我正在使用Java dsig库在以下代码中创建我的Signature元素。
最佳答案
向我展示的第一件事是UserId的名称空间不同于我当前使用的名称空间。看起来您正在使用acabusinessheader
的命名空间,当它应该是common
命名空间时,将其更改为我在下面更改的名称至少会使用正确的命名空间来使用该标记。
<sec:ACASecurityHeader>
<com:UserId>[REDACTED]</com:UserId>
</sec:ACASecurityHeader>
关于java - 尝试发送到IRS A2A系统时收到TPE错误1105,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54717818/