Skip to content

Instantly share code, notes, and snippets.

@Fhernd
Created March 29, 2018 03:00
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Fhernd/eb8f7a14130e2f48672a3f58c4c9c2f8 to your computer and use it in GitHub Desktop.
Save Fhernd/eb8f7a14130e2f48672a3f58c4c9c2f8 to your computer and use it in GitHub Desktop.
Protección almacenamiento cadena de conexión. OrtizOL.
using System;
using System.Configuration;
using System.Data.SqlClient;
namespace R904ProtegerCadenaConexionBD
{
class R904Programa
{
static void Main(string[] args)
{
string nombreCadenaConexion = "CadenaConexionPrincipal";
string cadenaConexion = @"Data source =.\SQLEXPRESS; Initial catalog = Northwind;Integrated Security=SSPI;" +
"Min Pool Size= 5; Max Pool Size = 15; Connection Reset = True; Connection Lifetime = 600";
string proveedor = "System.Data.SqlClient";
ProtegerCadenaConexion(nombreCadenaConexion, cadenaConexion, proveedor);
ConnectionStringSettings configurationCadenaConexion = ConfigurationManager.ConnectionStrings[nombreCadenaConexion];
using (SqlConnection conexion = new SqlConnection(configurationCadenaConexion.ConnectionString))
{
}
Console.WriteLine("presione Enter para continuar...");
Console.ReadLine();
}
private static void ProtegerCadenaConexion(string nombre, string cadenaConexion, string proveedor)
{
Configuration configuracion = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
ConnectionStringsSection seccionConfiguracion = configuracion.ConnectionStrings;
if (seccionConfiguracion == null)
{
seccionConfiguracion = new ConnectionStringsSection();
configuracion.Sections.Add("connectionSettings", seccionConfiguracion);
}
if (!seccionConfiguracion.SectionInformation.IsProtected)
{
seccionConfiguracion.SectionInformation.ProtectSection("RsaProtectedConfigurationProvider");
}
ConnectionStringSettings configurarionCadena = new ConnectionStringSettings(nombre, cadenaConexion, proveedor);
seccionConfiguracion.ConnectionStrings.Add(configurarionCadena);
seccionConfiguracion.SectionInformation.ForceSave = true;
configuracion.Save(ConfigurationSaveMode.Full);
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment