I wrote a .net client using WSE 2.0 to talk to a web service.
The client signs the request.
The response signs the response.
So far so good.
However, i extended the service to encrypt the response. The symmetric key used to encrypt the reponse is itself encrypted using the client's x509 cert embedded in the request (in a typical EncryptedKey element).
The WSE client can't seem to handle this EncryptedKey element. It throws the following exception:
Microsoft.Web.Services2.Security.SecurityFault: Referenced security token could
not be retrieved
at Microsoft.Web.Services2.Security.EncryptedKey.LoadXml(XmlElement element)
at Microsoft.Web.Services2.Security.EncryptedKey..ctor(XmlElement element)
at Microsoft.Web.Services2.Security.Security.LoadXml(XmlElement element)
at Microsoft.Web.Services2.Security.SecurityInputFilter.ProcessMessage
(SoapEnvelope envelope)
at Microsoft.Web.Services2.Pipeline.ProcessInputMessage(SoapEnvelope
envelope)
So, the exception occurs in the client, not the server ?
In other words, the server has successfully retrieved the Client's Public
Key and encrypted the response for the client ? If this is true -> Check and
make sure the client's cert token is sent back with the headers in the
response. It seems, from this exception, that this security token is not
found in the headers.
hth.

Signature
Thank you very much
Warmest Regards,
Softwaremaker
Architect | Evangelist | Consultant
+++++++++++++++++++++++++++++++++
> I wrote a .net client using WSE 2.0 to talk to a web service.
> The client signs the request.
> The response signs the response.
> So far so good.
>
> However, i extended the service to encrypt the response. The symmetric key used to encrypt the reponse is itself encrypted using the client's x509 cert
embedded in the request (in a typical EncryptedKey element).
> The WSE client can't seem to handle this EncryptedKey element. It throws the following exception:
>
[quoted text clipped - 14 lines]
>
> <Id>gUaY272TeU67xK8etYqdWQ==</Id