Wygląda na to, że zużywająca się usługa internetowa używa WS-Security. WS-Security to standard OASIS, który wykorzystuje XML-Signature i XML-Encryption do zabezpieczania wiadomości SOAP. Jednak, o ile wiem, Soap4r nie obsługuje WS-Security. Wdrożenie go samemu jest dość beznadziejne, ponieważ jest dość skomplikowane (i zawiera irytujące elementy, takie jak kanonizacja XML).
WSO2 ma wiązania ruby dla ich szkieletu (http://wso2.org/projects/wsf/ruby) może mógłbyś z niego skorzystać. Jeśli nie, prawdopodobnie będziesz musiał zawinąć bibliotekę C (np. Libxmlsec), aby podpisać wiadomości utworzone przez Soap4r. Istnieją wiązania ruby (http://rubygems.org/gems/xmlsec-ruby), ale myślę, że nie eksponują pełnej funkcjonalności xmlsec.
Jeśli jest to opcja, można zaimplementować kod w Javie, ponieważ ma sporo zaawansowanych bibliotek open source SOAP ze wsparciem dla WS-Security, takich jak Metro (http://metro.java.net/), Axis2 (http://ws.apache.org/axis2/) i CXF (http://cxf.apache.org/)
Ktoś mógłby zaimplementować WS-Security z rubinem 3 lata później? Potrzebuję pomocy!! – rderoldan1