Normalmente a string de conexão com o banco de dados é colocada no arquivo web.config, pois existe uma API que pode acessar e recuperar dados diretamente.
Mas também existem alguns problemas de segurança. A cadeia de conexão do banco de dados está em texto não criptografado no arquivo .config.
Existe uma ferramenta como a ferramenta de registro ASP.NET IIS (Aspnet_regiis.exe) no .NET, que pode criptografar as seções do arquivo .config do site
: aspnet_regiis -pef "O nome da seção de configuração na web criptografada. config" "O diretório onde o arquivo web.config está localizado"
Descriptografia: aspnet_regiis -pdf "O nome da seção de configuração no web.config criptografado" "O diretório onde o arquivo web.config está localizado"
antes da criptografia:
<connectionStrings>
<add name="pubsConnectionString" connectionString="Fonte de dados=MHLSQL2000;Catálogo inicial=pubs;ID do usuário=sa;Senha=sql2000"
provedorName="System.Data.SqlClient" />
</connectionStrings>
Após a criptografia:
<connectionStrings configProtectionProvider="RsaProtectedConfigurationProvider">
<EncryptedData Type=" http://www.w3.org/2001/04/xmlenc#Element "
xmlns=" http://www.w3.org/2001/04/xmlenc# ">
<Algoritmo EncryptionMethod=" http://www.w3.org/2001/04/xmlenc#tripledes-cbc " />
<KeyInfo xmlns=" http://www.w3.org/2000/09/xmldsig #">
<EncryptedKey xmlns=" http://www.w3.org/2001/04/xmlenc# ">
<Algoritmo EncryptionMethod=" http://www.w3.org/2001/04/xmlenc#rsa-1_5 " />
<KeyInfo xmlns=" http://www.w3.org/2000/09/xmldsig #">
<KeyName>Chave Rsa</KeyName>
</KeyInfo>
<Dados Cifrados>
<CipherValue>e15rhABrAtua53kjZ2a3U+ijC/Hr5ZhGUWGL5swkfxJaHS6hxGacw7CxyNlhnJwRc44ZE2edsKRfSJeXPS76fe4znlE5BqaxMMMWK+yFMiuWM+Cor1DFffheRNjAB7pMYdRQoMRCBq6H18gx IG lRY1dXtUERzNLJ5ug+S/qdj8E=</CipherValue>
</CipherData>
</EncryptedKey>
</KeyInfo>
<Dados Cifrados>
<CipherValue>Y1SjIK04jc0cS8Fg7EJyLoiXAUWc+I708SOsebWHeihg4kRFEF4wGvQLyrZQqFXNUIm56tIktQgapd7px92nfwAzYFv8R2gYV/7JwjfbjpM1v27p5WgNycJbo8H4uNj4 LwgPfoqy2Dl41geMFHXCOak8IWxrA8MkbpIsKHFTJNkMo9yph+vVUMdViwaBSOKONSrXJ2k16kjHoSjJe1VP6WfMFZCeL7+nMuLf4sNZc34d0fl3S50H+kNwZre9MkUCSLr5pImCv5fhgHP+Ee9 S8ahvOvRwUY7kWMr+M+jKoS+FDbhuRIkcbWaPP75XzdmyBN/vGwcMfX63faA9vdNOsl1a75Kd0L</CipherValue>
</CipherData>
</EncryptedData>
</connectionStrings>