如何使用Wss4jSecurityInterceptor / Spring WS为签名添加时间戳

时间:2015-08-13 05:18:19

标签: java web-services spring-ws wss4j

我想在我的签名中添加一个时间映射,该时间映射在20000毫秒内到期。 我有什么要添加到我的配置?

我的口号如下:



<bean class="org.springframework.ws.soap.security.wss4j.Wss4jSecurityInterceptor">
    <property name="securementActions" value="Signature"/>
    <property name="securementUsername" value="mykey"/>
    <property name="securementPassword" value="123456"/>
    <property name="securementSignatureCrypto">
        <bean class="org.springframework.ws.soap.security.wss4j.support.CryptoFactoryBean">
            <property name="keyStorePassword" value="123456"/>
            <property name="keyStoreLocation" value="classpath:/keystore.jks"/>
        </bean>
    </property>
</bean>
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:1)

您可以执行以下操作(来源here第7.3.4.1节):

<bean class="org.springframework.ws.soap.security.wss4j.Wss4jSecurityInterceptor">
    <property name="validationActions" value="Timestamp"/>
    <property name="timestampStrict" value="true"/>
    <property name="timeToLive" value="10"/>
</bean>

似乎较新的版本具有以下属性名称“ securementTimeToLive ”而不是timeToLive,默认设置为300.