1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 package org.apache.wss4j.dom.common;
21
22 import javax.security.auth.callback.Callback;
23 import javax.security.auth.callback.CallbackHandler;
24 import javax.security.auth.callback.UnsupportedCallbackException;
25
26 import org.apache.wss4j.common.ext.WSPasswordCallback;
27
28 import java.io.IOException;
29
30
31
32
33
34 public class EncodedPasswordCallbackHandler implements CallbackHandler {
35
36 public void handle(Callback[] callbacks)
37 throws IOException, UnsupportedCallbackException {
38 for (Callback callback : callbacks) {
39 if (callback instanceof WSPasswordCallback) {
40 WSPasswordCallback pc = (WSPasswordCallback) callback;
41 if (pc.getUsage() == WSPasswordCallback.USERNAME_TOKEN) {
42 if ("wernerd".equals(pc.getIdentifier())) {
43
44 pc.setPassword("hGqoUreBgahTJblQ3DbJIkE6uNs=");
45 } else if ("bob".equals(pc.getIdentifier())) {
46
47 pc.setPassword("jux7xGGAjguKKHg9C+waOiLrCCE=");
48 }
49 }
50 } else {
51 throw new UnsupportedCallbackException(callback, "Unrecognized Callback");
52 }
53 }
54 }
55 }