Description
So far the assumption with JAAS login modules is that the password is to be compared "as is". However per the ws-security spec, the PasswordDigest for UsernameToken is "the concatenation of the nonce plus the creation time plus the password. The nonce is 16 bytes long and is passed along as a base64 encoded value. The way this works is that the client creates the password hash using all of this information plus the password". So the PasswordDigest would change per each invocation, so we can't simply store the passwords in a digest form in the properties file.
The way to make it work, I think we need a DigestPasswordLoginModule which use a customized checkPassword method where can compare the stored password and the digest password from PasswordCallback (we may need take a close look how this part implemented in WSS4J for digest password comparing)