Можно ли сгенерировать WSDL с заполненным заголовком безопасности? - PullRequest
1 голос
/ 11 июля 2019

В настоящее время я работаю с файлами WSDL и в своем проекте я использую Spring WS с DefaultWsdl11Definition для генерации WSDL из XSD.Дело в том, что заголовок пуст, и я хотел бы создать заголовок с уже созданными тегами безопасности.

Я хочу сгенерировать файл WSDL с таким заголовком:

<soapenv:Header>
<wsse:Security soapenv:actor="http://schemas.xmlsoap.org/soap/actor/next" soapenv:mustUnderstand="0" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
        <wsse:UsernameToken xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
            <wsse:Username>?</wsse:Username>
            <wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">?</wsse:Password>
        </wsse:UsernameToken>
    </wsse:Security>
</soapenv:Header>

WSDL, который у меня есть сегодня, генерирует пустой заголовок.Я хотел бы знать, возможно ли создать WSDL, который генерирует заголовок с уже заполненными тегами безопасности.

1 Ответ

0 голосов
/ 12 июля 2019

Да - вы можете использовать Apache Wss4j с Spring 100 *, определив следующее в вашем классе конфигурации:

@Bean
public Wss4jSecurityInterceptor securityInterceptor() {
    Wss4jSecurityInterceptor interceptor = new Wss4jSecurityInterceptor();
    interceptor.setSecurementActions("UsernameToken");
    interceptor.setSecurementUsername("?");
    interceptor.setSecurementPassword("?");
    return interceptor;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...