[Mono-list] WCF certificate security with Mono
atsushieno at veritas-vos-liberabit.com
Sat Jul 23 15:24:34 EDT 2011
We had support for message security which is about WS-Security very
partially, but we are not going to support it.
> I'm trying to migrate an existing application to Mono (v2.10.2).
> Therefore I created a test WCF service with BasicHttpBinding and
> message security. The client works perfectly with .NET, but when
> running with Mono it fails.
> The client factory is instantiated as follows:
> var certificate= new X509Certificate2("certificate.pfx", "password");
> var binding= new BasicHttpBinding();
> binding.Security.Mode = BasicHttpSecurityMode.Message;
> binding.Security.Message.ClientCredentialType = BasicHttpMessageCredentialType.Certificate;
> var epa= new EndpointAddress(
> new Uri("http://localhost:53076/Service1.svc" <http://localhost:53076/Service1.svc>),
> new X509CertificateEndpointIdentity(certificate));
> var factory= new ChannelFactory<IService1>(binding, epa);
> factory.Credentials.ServiceCertificate.DefaultCertificate = certificate;
> factory.Credentials.ServiceCertificate.Authentication.CertificateValidationMode = X509CertificateValidationMode.None;
> factory.Credentials.ServiceCertificate.Authentication.RevocationMode = X509RevocationMode.NoCheck;
> factory.Credentials.ClientCertificate.Certificate = certificate;
> var client= factory.CreateChannel();
> In Mono the application fails within CreateChannel throwing the exception:
> System.InvalidOperationException: The binding does not support any
> of the channel types that the contract 'IService1' allows.
> I debugged into the Mono source code and found out that the problem is
> that AsymmetricSecurityBindingElement.InitiatorTokenParameter == null.
> I'm new to Mono, maybe you could point me to a documentation/tutorial
> which covers this topic.
> Mono-list maillist - Mono-list at lists.ximian.com
More information about the Mono-list