¿Cómo uso una autoridad de certificación personalizada en SharpSVN sin instalar el certificado?

StackOverflow https://stackoverflow.com//questions/11652229

Pregunta

Estoy tratando de acceder a un repositorio de subversión usando Sharpsvn.El repositorio solo está disponible a través de HTTPS y la máquina utiliza su propia autoridad de certificación privada (no se preocupe por la seguridad aquí, confío en la Autoridad).

Tengo el certificado de raíz público de la Autoridad de Certificación, sin embargo, debido a los derechos de acceso al usuario, no puedo instalar el certificado en el almacén de certificados.

Si uso Subversion directamente, puedo agregar:

servers:global:ssl-authority-files=/path/to/cacert.crt
servers:groups:myhost=myhostsdns.com

ya sea como objetos de línea de comandos o al archivo de configuración.

¿Cómo configuro estas opciones en SharpSvn para que pueda usar el archivo CACERT.CRT para que no obtenga la verificación de certificados ", cuando intento acceder a mi repositorio, y no tengo que ignorarel error?

Muchas gracias

¿Fue útil?

Solución

¿Cómo es que es solo después de que haga la pregunta que realiza la respuesta?

Resolví esto configurando las opciones de configuración en el objeto SVNClient como tal:

SvnClient _svnClient = new SvnClient();
_svnClient.Configuration.SetOption("servers", "global", "ssl-authority-files", "/path/to/cacert.crt");
_svnClient.Configuration.SetOption("servers", "groups", "myhost", "myhostsdns.com");

disculpas por la autoayuda, espero que ayude a la siguiente persona.

Otros consejos

Expandiendo el comentario de Bert Huijben (arriba):

client.Authentication.SslServerTrustHandlers += new EventHandler<SharpSvn.Security.SvnSslServerTrustEventArgs>(Authentication_SslServerTrustHandlers);
void Authentication_SslServerTrustHandlers(object sender, SharpSvn.Security.SvnSslServerTrustEventArgs e)
{
    // Look at the rest of the arguments of E, whether you wish to accept

    // If accept:
    e.AcceptedFailures = e.Failures;
    e.Save = true; // Save acceptance to authentication store
}

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top