Red de conocimiento informático - Material del sitio web - Cómo cifrar y descifrar cadenas de conexión de bases de datos en Web.config

Cómo cifrar y descifrar cadenas de conexión de bases de datos en Web.config

I. Cómo cifrar y descifrar la cadena de conexión de la base de datos en Web.config para evitar el uso del método de texto sin cifrar. 1) Descripción general:

Web.Config puede almacenar declaraciones de conexión de bases de datos, generalmente almacenadas en la sección de configuración de ConnectionStringgt. Las llamadas al programa son muy convenientes, pero en las aplicaciones del sistema, no es conveniente almacenar esta información confidencial en formato simple. texto Seguridad, esto requiere que la información de configuración esté cifrada. Después del cifrado, incluso si el atacante obtiene acceso al archivo de configuración, puede dificultarle la obtención de información confidencial, mejorando así la seguridad de la aplicación.

Utilice la herramienta de registro ASP.NET IIS (Aspnet_regiis.exe) para cifrar o descifrar partes del archivo de configuración web. ASP.NET descifra automáticamente los elementos de configuración cifrados al procesar el archivo Web.config.

Para cifrar el contenido del archivo de configuración, el cifrado y descifrado de nodos se puede realizar a través de la utilidad Aspnet_regiis.exe utilizando la opción -pe y el nombre del elemento de configuración a cifrar, aprovechando la dos proporcionados por .NET Framework. Un programa de configuración protegido:

Un programa llamado DataProtectionConfigurationProvider. Una instancia de DPAPIProtectedConfigurationProvider puede usar la API de protección de datos de Windows (DPAPI) para cifrar y descifrar datos.

La instancia de RsaProtectedConfigurationProvider denominada RsaProtectedConfigurationProvider cifra y descifra datos utilizando el algoritmo de cifrado RSA. Este proveedor está configurado como proveedor predeterminado

Los siguientes son ejemplos de estos dos métodos de cifrado:

2) Cifrar y descifrar secciones de configuración usando DPAPIProtectedConfigurationProvider

Usando aspnet_regiis -pef connectStrings encrypt web.config En el símbolo del sistema del servidor, ingrese el siguiente comando:

C:\Windows\Microsoft.NET\Framework\v2.0.50727gt -pef connectStrings D:\Program \; ¿Alguna parte de configuración de cifrado system\EpointBid_HuiYuan -prov DataProtectionConfigurationProvider? ¡éxito!

-pef especifica dos parámetros: Las cadenas de conexión aquí son la parte de configuración que se cifrará, seguida de la ruta específica del programa. Aquí D:\program\a system\EpointBid_HuiYuan es el directorio físico donde se encuentra el archivo de configuración que se va a cifrar.

-prov indica qué controlador usar para el cifrado. Hay dos controladores disponibles para ****, similar a

C:\WINDOWS\Microsoft.NET\Framework\. ubicación de v2.0.50727\CONFIG podemos encontrar el archivo machine.config y en su sección de configuración configProtectedData podemos ver los nombres de los dos controladores y cuál es el controlador predeterminado.

Los dos controladores son RsaProtectedConfigurationProvider (nombre de clase RsaProtectedConfigurationProvider, vea el ejemplo a continuación) y

DataProtectionConfigurationProvider (nombre de clase DpapiProtectedConfigurationProvider).

Si no se agrega ninguna opción de controlador, se utilizará el controlador predeterminado para el cifrado.