Как включить элемент подписи в системе SignatureConfirmation в сервере SOAP Apache CXF

StackOverflow https://stackoverflow.com/questions/4974229

Вопрос

У меня есть клиент SOAP, а также сервер SOAP, использующий CXF.У меня есть подписание сообщений работает правильно.Когда я указываю на мой SOAP клиент на другом сервере SOAP, используя IBM SOAP Appliance, сообщения ответа содержат элемент подписания.Я хочу убедиться, что мой сервер на базе CXF дает те же результаты, что и сторонние серверы SOAP, так как я могу настроить мой сервер, чтобы включить этот элемент?

Вот как я настроил свой сервер:

signingProps.put(WSHandlerConstants.ACTION, "Timestamp Signature"); 
signingProps.put(WSHandlerConstants.SIGNATURE_PARTS, "{}{http://schemas.xmlsoap.org/soap/envelope/}Body ;" 
      + "{}{http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd}" 
      + "Timestamp"); 
signingProps.put(WSHandlerConstants.SIG_KEY_ID, "IssuerSerial"); 

Properties keyStoreProps = new Properties(); 
keyStoreProps.put(LocalCryptoProvider.WS_CRYPTO_PROVIDER, 
    LocalCryptoProvider.class.getName()); 
keyStoreProps.put(LocalCryptoProvider.KEYSTORE_OBJECT, keyStore); 

WSS4JOutInterceptor outSigner = new WSS4JOutInterceptor(signingProps); 
cxfFactory.getOutInterceptors().add(new SAAJOutInterceptor()); 
cxfFactory.getOutInterceptors().add(outSigner); 
.

Это было полезно?

Решение 2

Я нашел правильный ответ.

в карте свойств, передаваемые на wss4joutinterector и wss4jininterceptor, добавьте enable_signature_confirmation, i.e.

signingProps.put(WSHandlerConstants.ENABLE_SIGNATURE_CONFIRMATION, "true" );

Это должно быть установлено как на клиенте, так и на сервере, либо не будет работать.Также, если вы включите подтверждение подписи на клиенте, но не на сервере, то клиент бросит исключение.

Другие советы

Действие должно быть «включено», которое позаботится о добавлении элемента подтверждения подписи в ответ.

signingProps.put(WSHandlerConstants.ACTION, "enableSignatureConfirmation");
.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top