Hi Erdem;
Please try with the samples\policy\sample03
Thanks & regards.
-Prabath
Erdem ALPAY wrote:
I have a problem about the 5th example of rampart. When I try to
invoke service from client, service responds the
"WSDoAllReceiver: security processing failed"
fault. I searched it from the internet and tried every solution that I
find. But I couldn't resolve problem. I think problem is in the
service side, since client sends encrypted data to service
successfully. (I checked it with Tcpmon) It may be also due to java
key stores, since the original keystores in the example didn't work, I
replaced them with new ones I generated.
Quick responses will be highly appreciated..
Here's my files:
PWCBHandler.java:
package org.apache.rampart.samples.sample05;
import org.apache.ws.security.WSPasswordCallback;
import javax.security.auth.callback.Callback;
import javax.security.auth.callback.CallbackHandler;
import javax.security.auth.callback.UnsupportedCallbackException;
import java.io.IOException;
public class PWCBHandler implements CallbackHandler {
public void handle(Callback[] callbacks) throws IOException,
UnsupportedCallbackException {
for (int i = 0; i < callbacks.length; i++) {
WSPasswordCallback pwcb = (WSPasswordCallback)callbacks[i];
String id = pwcb.getIdentifer();
if("client".equals(id)) {
pwcb.setPassword("apache");
} else if("service".equals(id)) {
pwcb.setPassword("apache");
}
}
}
}
SimpleService.java :
public class SimpleService { public String echo(String arg) {
return arg;
}
}
service.xml :
<service name="SimpleService" >
<Description>
Please Type your service description here
</Description>
<messageReceivers>
<messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-only"
class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver" />
<messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out"
class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>
</messageReceivers>
<parameter name="ServiceClass"
locked="false">org.apache.rampart.samples.sample05.SimpleService</parameter>
<module ref="rampart" />
<parameter name="InflowSecurity">
<action>
<items>Encrypt</items>
<passwordCallbackClass>org.apache.rampart.samples.sample05.PWCBHandler</passwordCallbackClass>
<decryptionPropFile>service.properties</decryptionPropFile>
</action>
</parameter>
<parameter name="OutflowSecurity">
<action>
<items>Encrypt</items>
<encryptionUser>client</encryptionUser>
<encryptionPropFile>service.properties</encryptionPropFile>
</action>
</parameter>
</service>
______________________
As I said I don't think the problem is in client side but I send my
client's request just in case(I can send client side files also but
like the service files they are rampart's example and can be reached
easily)
Here's the request of client :
POST /service05/services/SimpleService HTTP/1.1
Content-Type: text/xml; charset=UTF-8
SOAPAction: "urn:echo"
User-Agent: Axis2
Host: 127.0.0.1:7071
Transfer-Encoding: chunked
92c
<?xml version='1.0' encoding='UTF-8'?>
<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xenc="http://www.w3.org/2001/04/xmlenc#">
<soapenv:Header xmlns:wsa="http://www.w3.org/2005/08/addressing">
<wsse:Security
xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"
soapenv:mustUnderstand="1">
<xenc:EncryptedKey
Id="EncKeyId-urn:uuid:48535FF564B27B0F6E12465368715192">
<xenc:EncryptionMethod
Algorithm="http://www.w3.org/2001/04/xmlenc#rsa-1_5" />
<ds:KeyInfo xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
<wsse:SecurityTokenReference>
<ds:X509Data>
<ds:X509IssuerSerial>
<ds:X509IssuerName>CN=q,OU=w,O=e,L=r,ST=t,C=y</ds:X509IssuerName>
<ds:X509SerialNumber>1246533967</ds:X509SerialNumber>
</ds:X509IssuerSerial>
</ds:X509Data>
</wsse:SecurityTokenReference>
</ds:KeyInfo>
<xenc:CipherData>
<xenc:CipherValue>A77KNfyOpakIqEE7kCJhQpp1gPJ9qVns/wPxpckS6VdkTAclo1KnsLRWuxUw18SXaf18sLP4oM33Z8M2OnSoYCFsgTfVveLej1Fqw/YOg2G3Rs7CCRRaAOkBNfzojkqx/S6FxJUZwc3eIookFv4LzMqNuZq7bfVcjvgsm65CRV0=</xenc:CipherValue>
</xenc:CipherData>
<xenc:ReferenceList>
<xenc:DataReference URI="#EncDataId-30216319" />
</xenc:ReferenceList>
</xenc:EncryptedKey>
</wsse:Security>
<wsa:To>http://localhost:7071/service05/services/SimpleService</wsa:To>
<wsa:MessageID>urn:uuid:A4E6827986272D14C81246536869238</wsa:MessageID>
<wsa:Action>urn:echo</wsa:Action>
</soapenv:Header>
<soapenv:Body>
<xenc:EncryptedData Id="EncDataId-30216319"
Type="http://www.w3.org/2001/04/xmlenc#Content">
<xenc:EncryptionMethod
Algorithm="http://www.w3.org/2001/04/xmlenc#aes128-cbc" />
<ds:KeyInfo xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
<wsse:SecurityTokenReference
xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
<wsse:Reference
URI="#EncKeyId-urn:uuid:48535FF564B27B0F6E12465368715192" />
</wsse:SecurityTokenReference>
</ds:KeyInfo>
<xenc:CipherData>
<xenc:CipherValue>qeqUR+BabpbNLn9eI4yDDsqKYAdsPRvVTi0/mBC2leuV1JFyBriU4B4LT/MmqCZHvXIhMogjm8SCmePhdAdSqBahN9NnQntINPNy3ZXrAclfpYWoL0bmkxhTB+HOfCcx0ptXAHVLaR71QiTS0zx79y2Vu2sDUxTQyHv4iQ7Waup/4D/sokPRV6/mr1LE8RL+4Ri/myGnPJR//x42zLIbMj4KFFhr3QcfqcvDpCfQLf8cIS4RDelqkGnWbVFxFuW1yNoqdBfzkxvGjATOk9T5cPI/P5MobQ/wTcZyBPZ3fDTgCyNdq23bs3L+FL4DTtYx</xenc:CipherValue>
</xenc:CipherData>
</xenc:EncryptedData>
</soapenv:Body>
</soapenv:Envelope>
______________________________