Hi,
We have a ColdFusion (9.01) application deployed under WebSphere 7. There are some application credentials stored in a J2C alias that was configured using the WAS console. I would like to know if there is any way I can retrieve those credentials programmatically using ColdFusion.
I found an example of how to retrieve them using Java which is currently not an option but I was wondering if the underlying objects can be accessed from CF.
Here is the Java example:
public static javax.resource.spi.security.PasswordCredential getJ2CData(String j2cAlias) throws Exception {
String methodName = "getJ2CData";
javax.resource.spi.security.PasswordCredential result = null;
try {
// ----------WAS 6 change -------------
HashMap map = new HashMap();
map.put(com.ibm.wsspi.security.auth.callback.Constants.MAPPING_ALIAS, j2cAlias);
CallbackHandler cbh = (WSMappingCallbackHandlerFactory.getInstance()).getCallbackHandler(ma p, null);
LoginContext lc = new LoginContext("DefaultPrincipalMapping", cbh);
lc.login();
javax.security.auth.Subject subject = lc.getSubject();
java.util.Set creds = subject.getPrivateCredentials();
result = (javax.resource.spi.security.PasswordCredential) creds.toArray()[0];
} catch(Exception e) {
e.printStackTrace();
log.severe("APPLICATION ERROR: cannot load credentials for j2calias = " + j2cAlias);
throw new Exception("Unable to get credentials");
}
return result;
}
Any help will be greatly appreciated.
Thanks,
Ken