I've used to following code to programatically set the user for 'UsernameToken'
in the security header.
String username = "secretUser";
Options options = new Options();
stub._getServiceClient().setOptions(options);
stub._getServiceClient().setTargetEPR(new EndpointReference(endpoint));
options.setProperty(WSSHandlerConstants.OUTFLOW_SECURITY,
getOutflowConfiguration(username));
stub._getServiceClient().engageModule(new QName("rampart"));
However, this is engaging rampart programatically. I haven't tried this using a
'axis2_client.xml' yet but hopefully this sort of thing will also work. I
imagine that setting the encryption user wold be similar.
Incidently, If anyone is aware of the 'proper' way to do this could you please
show a code snippet?
Cheers,
Mark B
________________________________
From: Konstantinos Pateras [mailto:[EMAIL PROTECTED]
Sent: Fri 5/18/2007 9:51 AM
To: [email protected]
Subject: Programmatically set encryption user in server
Hi all, I have set up Axis2 1.1.1 and Rampart 1.1 and configure it (I
followed the configuration instructions for Rampart 1.0 that are still
supported). I use UsernameToken and encryption with a known key to
both parts but I want to set the encryption user programmatically in
server when it sends a response. This is because each user has its own
key stored in a database and is beeing retrieved in the
PasswordCallbackHandler.
Is there a way to do it like with
<encryptionUser>useReqSigCert</encryptionUser> that is used when the
incoming message is signed or can I get the calling user in
PasswordCallbackHandler when I send the response?
Another option is to pass a parameter to the constructor of the
PasswordCallbackHandler but I do not know where to instantiate the
handler in server.
I have tried the following in the PasswordCallbackHandler:
MessageContext msgContext = MessageContext.getCurrentMessageContext();
but the msgContext is null in the response.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]