c# - encrypt - ssl sql server 2014
La conexión a la base de datos SQL Azure falla debido a la falta de cifrado SSL (3)
Cambia a usar mono como objetivo de compilación. Esto debería darle acceso a ssl en el marco de la entidad.
Estoy aprendiendo ASP.NET 5 (vNext) en mi Mac. Durante el último día, me he quedado atascado al intentar conectarme a mi base de datos SQL Azure. En ese intento, he estado usando el siguiente código:
var serverName = "[protected]";
var dbName = "[protected]";
var userId = "[protected]";
var password = "[protected]";
var sql = "SELECT * FROM Customer";
using (var database = new SqlConnection("Server=tcp." + serverName + ".database.windows.net,1433;Database=" + dbName + ";User Id=" + userId + ";Password=" + password + ";Trusted_Connection=False;Encrypt=True;Max Pool Size=25"))
{
database.Open();
return await database.QueryAsync<T>(sql);
}
Cuando este código se ejecuta, se lanza una excepción. Los detalles de la excepción se ve así:
Tipo:
System.NotImplementedExceptionMensaje:
El cifrado SSL para los datos enviados entre el cliente y el servidor no está implementado.
ACTUALIZACIÓN Me enteré de que el cifrado no se admite en el marco que se ejecuta en Mac OS X en este momento. Por esa razón, actualicé mi cadena de conexión para que se pareciera a lo siguiente:
var connectionString = "Persist Security Info=False;Integrated Security=true;Initial Catalog=" + dbName + ";server=" + serverName + ";User Id=" + userId + ";Password=" + password;
Aún así, cuando uso la cadena de conexión anterior, obtengo el siguiente error.
Tipo:
System.Data.SqlClient.SqlExceptionMensaje:
El servidor no existe o se ha rechazado la conexión.
He confirmado que mi dirección IP no está bloqueada por Azure. Hice esto iniciando sesión en el Portal de Azure y administrando la base de datos de SQL Server desde la aplicación Silverlight. Sin embargo, todavía no estoy seguro de por qué estoy recibiendo este error.
Si entiendo esto correctamente, no hay una manera de conectarme a una base de datos de SQL Azure en este momento desde ASP.NET 5 que se ejecuta en una Mac. ¿Es eso cierto? Si no es verdad, ¿qué estoy haciendo mal?
Como saben, vNext en Mac está en vista previa pública.
Todavía estamos trabajando para proporcionar conectividad SQL. El cifrado SSL aún no es compatible con Mac y Azure SQL DB requiere uno. El proyecto está en trámite y se lo informaremos una vez que tengamos algo para compartir.
Mientras tanto, si tiene alguna otra pregunta, por favor hágamelo saber.
Mejor,
Conoce a Bhagdev
Administrador de programas, Microsoft
Sé que esta no es la respuesta que está buscando, pero SQL Azure requiere SSL según https://msdn.microsoft.com/en-us/library/azure/ff394108.aspx .
Estoy bastante seguro de que está atascado hasta que se agregue el soporte SSL a OS X (ya sea a través de Mono o CoreCLR).