dotnet web services enhancements:
Hi all,
I am having difficulty running a WSE 2.0 enabled Web Service under Windows
2000. I can run the same web service using X.509 certificates for
authentication and encryption when the web service is on a Windows 2003
Server (Enterprise Edition) and the caller is on my Windows 2000 machine.
But when the Web Service is on the same Windows 2000 machine I get the
following returned from the web service call:
Message "System.Web.Services.Protocols.SoapHeaderException: Server
unavailable, please try later ---> System.InvalidOperationException: Private
Key is not available\n at
Microsoft.Web.Services2.Security.Cryptography.RSACryptoServiceProvider.Decrypt(Byte[]
ciphertext, Boolean useOAEP)\n at
Microsoft.Web.Services2.Security.Cryptography.RSA15KeyExchangeFormatter.DecryptKey(Byte[]
cipherKey)\n at Microsoft.Web.Services2.Security.EncryptedKey.Decrypt()\n
at Microsoft.Web.Services2.Security.Security.LoadXml(XmlElement
element)\n at
Microsoft.Web.Services2.Security.SecurityInputFilter.ProcessMessage(SoapEnvelope
envelope)\n at
Microsoft.Web.Services2.Pipeline.ProcessInputMessage(SoapEnvelope
envelope)\n at
Microsoft.Web.Services2.WebServicesExtension.BeforeDeserializeServer(SoapServerMessage
message)\n --- End of inner exception stack trace ---" string
I have been looking around Google Groups and have found a few people talking
about there being difficulties in getting this to work on Windows 2000 and
storing certificates under the "Other People" branch of the certificate store.
In which certificate store does a WSE 2 web service look for a private
certificate key? Is it looking in "Other people"? Can I change this? I am
using VS.NET 2003 (C#). Is something just not supported under Windows 2000?