Qualcuno mi può fornire un esempio su come creare un certificato auto firmato, che verrebbe accettato dal seguente codice:Come usare makecert per creare un certificato X509 accettato da WCF
ServiceHost svh = new ServiceHost(typeof(MyClass));
var tcpbinding = new NetTcpBinding(SecurityMode.TransportWithMessageCredential, true);
//security
tcpbinding.Security.Message.ClientCredentialType = MessageCredentialType.UserName;
svh.Credentials.UserNameAuthentication.CustomUserNamePasswordValidator = new BWUserNamePasswordValidator();
svh.Credentials.UserNameAuthentication.UserNamePasswordValidationMode =UserNamePasswordValidationMode.Custom;
svh.Credentials.ServiceCertificate.Certificate = BookmarkWizSettings.TcpBindingCertificate;
....
svh.Open();
ho utilizzato
makecert -pe myCertificate
e
makecert -sv SignRoot.pvk -cy authority -r signroot.cer -a sha1 -n "CN=Dev Certification Authority" -ss my -sr localmachine
e
makecert -r -pe -n "CN=Client" -ss MyApp -sky Exchange
e ho provato a generare il certificato con BouncyCastle, ma ogni volta che sto ottenendo seguente eccezione:
It is likely that certificate 'CN=Dev Certification Authority' may not have a
private key that is capable of key exchange or the process may not have access
rights for the private key. Please see inner exception for detail.
e l'eccezione interna è nullo.
Probabilmente c'è un trucco, ma non lo capisco.
Come si genera un certificato adeguato per il servizio WCF ??
Date un'occhiata a questo come collegare. http://msdn.microsoft.com/en-us/library/ff648498.aspx –
Questo collegamento è stato il più utile per me nel creare il mio. Cammina attraverso tutti i passaggi. http://www.codeproject.com/Articles/96028/WCF-Service-with-custom-username-password-authenti – vikingben