Olá pessoal!!
Quero deixar hoje uma dica simples e que ajuda a aumentar a segurança dos sistemas Web: criptografia de informações no Web.config.
Então vamos lá!
Para este trabalho utilizaremos a ferramenta “aspnet_regiis.exe” a partir do Visual Studio Command Prompt 2010, juntamente com a seguinte ConnectionString :
É possível criptografar sua ConnectionString utilizando um caminho físico ou lógico, como veremos abaixo.
Criptografando a partir do caminho físico:
Utilizaremos o comando aspnet_regiis -pef "seção_a_criptografar" "caminho_fisico_do_arquivo", onde "seção_a_criptografar" é uma seção existente do seu Web.config e "caminho_fisico_do_arquivo" é o caminho onde encontra-se seu Web.config.
Sendo assim, abra o Command Prompt do Visual Studio e digite o comando acima, informando os parametros de acordo com sua configuração.
Após executado o comando e não sido apresentado nenhum erro, a ConnectionString acima ficará assim.
(Obs.: os valores em <CipherValue> foram "quebrados" para melhor visualização)
Se não ocorrer nenhum erro, a connection string estará descriptografada como aqui.
De maneira muito similar, é possível criptografar e descriptografar as informações do web.config utilizando o caminho lógico.
Os comandos utilizados são extremamente similares aos já apresentados:
E para descriptografar utilize aspnet_regiis -pd "seção_a_criptografar" -app "/Nome_Logico_Aplicação".
É importante citar que criptografar sua Connection String não afeta sua utilização pela aplicação.
_ Página do MSDN sobre o aspnet_regiis;
That's All (for now...) Folks!!