Criptografando e descriptogrando strings de conexão no web.config
Introdução
Neste artigo vamos aprender a criptografar dados sensíveis através da ferramenta aspnet_regiis.exe.
Ambiente testado
Windows Server 2008 R2 Enterprise
Internet Information Services 7.5, com um diretório virtual chamado Web
Framework 64
Prática
Antes de iniciarmos com a prática, vamos ver como está o web.config:
Podemos notar que o texto está “clean” ou seja, pode ser lido por qualquer pessoa, obtendo informações importantes, como: localização do banco, nome do banco, senha e outros. Para criptografar a “section” <connectionStrings>, siga o procedimento abaixo:
- Abra o prompt de comando em modo elevado
- Navegue até a pasta %systemroot%Microsoft.NETFramework64v2.0.50727>
- Digite: aspnet_regiis -pe “connectionStrings” -app “/Web” -prov “DataProtectionConfigurationProvider”
-pe – Especifica a sessão que será criptografada
-app – Especifica o diretório virtual da aplicação
-pef – Especifica o caminho físico da aplicação, exemplo: c:inetpubwwwrootWeb
-prov – Especifica o nome do provedor
- A saída do comando executado acima será:
Encrypting configuration section…
Succeeded!
Após executarmos a criptografia do web.config, abra-o e veja como ficou.
Para descriptografar o web.config, utilze o comando -pd
Sintaxe: aspnet_regiis -pd “connectionStrings” -app “/Web”
Decrypting configuration section…
Succeeded!
Conclusão
Neste artigo aprendemos a criptografar e descriptografar sections dentro do web.config
Erick Albuquerque | Microsoft MVP
MVP Profile | Twitter | Linkedin
Comments
Gerson
AuthorMas se eu publicar minha aplicação no host, alguém lá no host não poderia usar o processo inverso de descriptografar novamente?
iisbrasil
AuthorSim poderia, apenas se tiver acesso ao we.config.. Abs,