View Javadoc
1   /**
2    * Copyright 2005-2016 The Kuali Foundation
3    *
4    * Licensed under the Educational Community License, Version 2.0 (the "License");
5    * you may not use this file except in compliance with the License.
6    * You may obtain a copy of the License at
7    *
8    * http://www.opensource.org/licenses/ecl2.php
9    *
10   * Unless required by applicable law or agreed to in writing, software
11   * distributed under the License is distributed on an "AS IS" BASIS,
12   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13   * See the License for the specific language governing permissions and
14   * limitations under the License.
15   */
16  package org.kuali.rice.ksb.config.xfire;
17  
18  /*
19  import org.codehaus.xfire.MessageContext;
20  import org.codehaus.xfire.security.wss4j.WSS4JOutHandler;
21  */
22  
23  
24  /**
25   *
26   * @author Kuali Rice Team (rice.collab@kuali.org)
27   */
28  
29  //TODO: Replace this class with a cxf wss4j out interceptor
30  public class XFireWSS4JOutHandler {}
31  
32  /*
33  public class XFireWSS4JOutHandler extends WSS4JOutHandler {
34  
35  	private static final Logger LOG = Logger.getLogger(XFireWSS4JOutHandler.class);
36  
37  	private ServiceInfo serviceInfo;
38  
39  	public XFireWSS4JOutHandler(ServiceInfo serviceInfo) {
40  		this.setProperty(WSHandlerConstants.ACTION, WSHandlerConstants.SIGNATURE);
41  		this.setProperty(WSHandlerConstants.PW_CALLBACK_CLASS, CryptoPasswordCallbackHandler.class.getName());
42  		this.setProperty(WSHandlerConstants.SIG_KEY_ID, "IssuerSerial");
43  		this.setProperty(WSHandlerConstants.USER, ConfigContext.getCurrentContextConfig().getKeystoreAlias());
44  		this.serviceInfo = serviceInfo;
45  	}
46  
47  	@Override
48  	public Crypto loadSignatureCrypto(RequestData reqData) {
49  		try {
50  			return new Merlin(getMerlinProperties(), ClassLoaderUtils.getDefaultClassLoader());
51  		} catch (Exception e) {
52  			throw new RiceRuntimeException(e);
53  		}
54  	}
55  
56  	@Override
57  	public Crypto loadDecryptionCrypto(RequestData reqData) {
58  		return loadSignatureCrypto(reqData);
59  	}
60  
61  	protected Properties getMerlinProperties() {
62  		Properties props = new Properties();
63  		props.put("org.apache.ws.security.crypto.merlin.keystore.type", "jks");
64  		props.put("org.apache.ws.security.crypto.merlin.keystore.password", ConfigContext.getCurrentContextConfig().getKeystorePassword());
65  		props.put("org.apache.ws.security.crypto.merlin.alias.password", ConfigContext.getCurrentContextConfig().getKeystorePassword());
66  		props.put("org.apache.ws.security.crypto.merlin.keystore.alias", ConfigContext.getCurrentContextConfig().getKeystoreAlias());
67  		props.put("org.apache.ws.security.crypto.merlin.file", ConfigContext.getCurrentContextConfig().getKeystoreFile());
68  
69  		if (LOG.isDebugEnabled()) {
70  			LOG.debug("Using keystore location " + ConfigContext.getCurrentContextConfig().getKeystoreFile());
71  		}
72  
73  		return props;
74  	}
75  
76  	@Override
77  	public void invoke(MessageContext context) throws Exception {
78  		if (getServiceInfo().getServiceDefinition().getBusSecurity()) {
79  			super.invoke(context);
80  		}
81  	}
82  
83  	public ServiceInfo getServiceInfo() {
84  		return serviceInfo;
85  	}
86  
87  	public void setServiceInfo(ServiceInfo serviceInfo) {
88  		this.serviceInfo = serviceInfo;
89  	}
90  
91  }
92  */