我需要實現一個jax-ws客戶端。簽名和加密政策
這裏是供應商文檔說有關安全
目前,我們使用SOAP消息安全1.0版規範的 http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0.pdf
本標準採用兩位來自W3C規範其他:
XMLENC( http://www.w3.org/TR/2002/REC-xmlenc-core-20021210/)
和XMLDSIG(http://www.w3.org/TR/2002/REC-xmldsig-core-20020212/)對於簽名,使用指定X509的「URI」和「valueType」的直接 「引用」的「SecurityTokenReference」是強制性的。對於 的加密,我們也推薦它,但我們也支持 首選項對keyIdentifier,X509IssuerSerial或keyName的引用。
加密和簽名塊必須是「body」標籤。
我們推薦使用:「rsa-sha1」用於簽名,「rsa-1_5」用於 加密密鑰,「tripledes-cbc」用於加密主體。
所以我想出了以下策略(由netbeans生成)。但是......它看起來並不適合我。 Web服務尚未到達,但我不確定規格版本是否匹配。我在這個主題上讀了很多,但我仍然有些困惑。這個政策看起來好嗎?
<wsp1:Policy wsu:Id="ListeOperationsPeriodeSoapBindingSoapPolicy">
<wsp1:ExactlyOne>
<wsp1:All>
<sp:TransportBinding>
<wsp1:Policy>
<sp:TransportToken>
<wsp1:Policy>
<sp:HttpsToken RequireClientCertificate="false"/>
</wsp1:Policy>
</sp:TransportToken>
<sp:Layout>
<wsp1:Policy>
<sp:Lax/>
</wsp1:Policy>
</sp:Layout>
<sp:AlgorithmSuite>
<wsp1:Policy>
<sp:TripleDesRsa15/>
</wsp1:Policy>
</sp:AlgorithmSuite>
</wsp1:Policy>
</sp:TransportBinding>
<sp:Wss10/>
<sp:EndorsingSupportingTokens>
<wsp1:Policy>
<sp:X509Token sp:IncludeToken="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy/IncludeToken/AlwaysToRecipient">
<wsp1:Policy>
<sp:WssX509V3Token10/>
</wsp1:Policy>
</sp:X509Token>
</wsp1:Policy>
</sp:EndorsingSupportingTokens>
</wsp1:All>
</wsp1:ExactlyOne>
</wsp1:Policy>
<wsp:Policy wsu:Id="ListeOperationsPeriodeSoapBindingSoap_perform_Input_Policy">
<wsp:ExactlyOne>
<wsp:All>
<sp1:SignedEncryptedSupportingTokens>
<wsp:Policy>
<sp1:X509Token sp1:IncludeToken="http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702/IncludeToken/AlwaysToRecipient">
<wsp:Policy>
<sp1:WssX509V3Token10/>
</wsp:Policy>
</sp1:X509Token>
</wsp:Policy>
</sp1:SignedEncryptedSupportingTokens>
</wsp:All>
</wsp:ExactlyOne>
</wsp:Policy>
編輯: 我無法得到它發送與預期的消息WSIT-呢。例如,使用Netbeans嚮導,如果不使用尋址,我無法獲得加密的標頭。它應該是可能的嗎?
我用舊軸1類和wss4j破解了一些東西,但它很有效,但它很醜,我寧願使用更多的面向未來的東西。
更大的賞金會有幫助嗎? – ymajoros
我無法用wsit發送預期的消息。例如,使用Netbeans嚮導,如果不使用尋址,我無法獲得加密的標頭。它應該是可能的嗎?我用老軸1類和wss4j攻擊了一些東西,它可以工作,但它很醜,我寧願使用更多的面向未來的東西。 – ymajoros
這是更多的代碼審查網站上的代碼審查問題。 – user1378730