modificar - obtener cadena de conexion web.config c#
Encriptar cadena de conexión en app.config (3)
Definir la ubicación de config
Archivo
Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
si quieres encriptar connectionStrings
config.ConnectionStrings.SectionInformation.ProtectSection(Nothing);
debe tener en cuenta las porciones de configuración de la aplicación
así que si quieres encriptar AppSettings
config.AppSettings.SectionInformation.ProtectSection(Nothing);
Tengo problemas para cifrar una cadena de conexión en app.config. Tengo un código que protegerá la sección connectionStrings de app.config, pero la contraseña aún se muestra en texto plano.
Necesito encriptar la cadena de conexión para que no esté en texto plano cuando se despliega. Veo preguntas similares en SO para web.config, pero no en app.config.
Puede aplicar fácilmente la misma solución que la web.config solo tiene que cambiar el nombre de su app.config a web.config, encriptar con la herramienta aspnet_regiis y luego cambiarle el nombre a app.config.
- Cambiar el nombre de app.config a web.config
- Abra el símbolo del sistema y escriba:
%windir%/Microsoft.NET/Framework/v2.0.50727/aspnet_regiis -pef "connectionStrings" c:/<folder containing your web.config>
(detente en el nivel de la carpeta y no coloques el final "/") - cambiar el nombre de web.config a app.config
Puede abrirlo en el bloc de notas para ver el archivo encriptado. En el estudio visual, verá que está descifrado. Puede usar su cadena de conexión de la misma manera que si no estuviera encriptada.
Eche un vistazo a este artículo que tiene algunos ejemplos muy útiles. Básicamente buscas System.Configuration.SectionInformation.ProtectSection
para ayudarte aquí.
También echa un vistazo a la implementación de la configuración protegida