Spring Web Services Framework

org.springframework.ws.soap.security.xwss.callback
Class SpringDigestPasswordValidationCallbackHandler

java.lang.Object
  extended by org.springframework.ws.soap.security.callback.AbstractCallbackHandler
      extended by org.springframework.ws.soap.security.xwss.callback.SpringDigestPasswordValidationCallbackHandler
All Implemented Interfaces:
CallbackHandler, InitializingBean

public class SpringDigestPasswordValidationCallbackHandler
extends AbstractCallbackHandler
implements InitializingBean

Callback handler that validates a password digest using an Spring Security UserDetailsService. Logic based on Spring Security's DigestProcessingFilter.

An Spring Security UserDetailService is used to load UserDetails from. The digest of the password contained in this details object is then compared with the digest in the message.

This class only handles PasswordValidationCallbacks that contain a DigestPasswordRequest, and throws an UnsupportedCallbackException for others.

Since:
1.5.0
Author:
Arjen Poutsma
See Also:
UserDetailsService, PasswordValidationCallback, PasswordValidationCallback.DigestPasswordRequest

Field Summary
 
Fields inherited from class org.springframework.ws.soap.security.callback.AbstractCallbackHandler
logger
 
Constructor Summary
SpringDigestPasswordValidationCallbackHandler()
           
 
Method Summary
 void afterPropertiesSet()
           
protected  void handleInternal(Callback callback)
          Handles PasswordValidationCallbacks that contain a DigestPasswordRequest, and throws an UnsupportedCallbackException for others
 void setUserCache(org.springframework.security.core.userdetails.UserCache userCache)
          Sets the users cache.
 void setUserDetailsService(org.springframework.security.core.userdetails.UserDetailsService userDetailsService)
          Sets the Spring Security user details service.
 
Methods inherited from class org.springframework.ws.soap.security.callback.AbstractCallbackHandler
handle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SpringDigestPasswordValidationCallbackHandler

public SpringDigestPasswordValidationCallbackHandler()
Method Detail

setUserCache

public void setUserCache(org.springframework.security.core.userdetails.UserCache userCache)
Sets the users cache. Not required, but can benefit performance.


setUserDetailsService

public void setUserDetailsService(org.springframework.security.core.userdetails.UserDetailsService userDetailsService)
Sets the Spring Security user details service. Required.


afterPropertiesSet

public void afterPropertiesSet()
                        throws Exception
Specified by:
afterPropertiesSet in interface InitializingBean
Throws:
Exception

handleInternal

protected void handleInternal(Callback callback)
                       throws IOException,
                              UnsupportedCallbackException
Handles PasswordValidationCallbacks that contain a DigestPasswordRequest, and throws an UnsupportedCallbackException for others

Specified by:
handleInternal in class AbstractCallbackHandler
Throws:
UnsupportedCallbackException - when the callback is not supported
IOException

Spring Web Services Framework

Copyright © 2005-2013 The Spring Web Services Framework. All Rights Reserved.