LAYERDEV

 Busca Online:

 
Seja bem vindo(a) Visitante, você não está logado deseja logar
no portal para participar de serviços e promoções ? clique aqui.


No caso de perder a senha, acesse aqui e receba por e-mail.
Deseja entrar em contato conosco, acesse aqui e mande-nos um e-mail.

Como criptografar a string de conexão no Web.Config.

por Mauricio Junior em 1/1/2011 0

Segundo o Dicionário Aurélio criptografar significa.

 

[De cript(o)- + -graf(o)- + -ar2.]

V. t. d.

 1.        Tornar incompreensível, com observância de normas especiais consignadas numa cifra ou num código, o texto de (uma mensagem escrita com clareza).

 2.        Inform. Codificar (uma informação) de forma a tornar difícil sua decodificação sem a chave (20) adequada. 

 

[Cf. cifrar e codizar.]

 

Como no arquivo Web.Config nós guardamos dados confidenciais, como por exemplo a senha do banco de dados, convém criptografar (tornar incompreensível)  estas informações para que pessoas não autorizadas, tenha acesso. E este é o objetivo deste artigo, explicar como criptografar a string de conexão no arquivo Web.Conifg (Figura   1).

 

 

Figura 1 – Arquivo Web.Config.

 

 

 

 

  1. Nosso primeiro passo é saber em qual pasta nós criamos nosso projeto ASP.NET, no exemplo eu estou utilizando o seguinte diretório “F:\My Documents\Visual Studio 2005\WebSites\Criptografia” (Figura 2).

 

Figura 2 – Pasta do projeto ASP.NET contendo o arquivo Web.Config.

 

Por questões de praticidade não exibirei neste artigo o conteúdo do meu projeto, pois este não é o objetivo do artigo, e a única informação importante é que o projeto contém um arquivo com uma informação (senha do banco de dados) que precisamos tornar ela incompreensível para pessoas não autorizadas.

 

    2. O segundo passo é abrir o SDK Command Prompt do Framework 2.0 (Figura 3).

Figura 3 – SDK Command Prompt – Iniciar / Programas / Microsoft .NER Framework SDK 2.0

 

 

 

 

3. Com o SDK Command Prompt aberto (Figura 4), nós podemos através do comando aspnet_regiis.exe ler todas as opções de criptografia existentes como, por exemplo, o modo de criptografar o Web.Config no IIS é diferente do modo pasta, que é o que estamos fazendo neste artigo.

 


Figura 4 – aspneti_regiis.exe

 

 

4.  O quarto passo é executar o comando que irá realizar criptografia do Web.Config.

 

aspnet_regiis.exe -pef "connectionStrings" "F:\My Documents\Visual Studio 2005\WebSites\Criptografia" –prov "DataProtectionConfigurationProvider"

Listagem 1 – Comando aspnet_regiis.exe 

 

Vamos analisar o comando (Listagem 1).

    • comando –pef : 
             -pef section web-app-physical-dir
      Criptografa a sessão <connectionString>
    • Em seguida informamos o endereço físico do projeto.
    • A sessão que contém o a string de Conexão.

 

 

 

<connectionStrings>

        <add name="cnnString" connectionString="Data Source=MANS;Initial Catalog=Formulas;User ID=sa; Password=1010" providerName="System.Data.SqlClient" />

    </connectionStrings>

 Listagem 2 – Sessão <connectionStrings>

 

    • O –prov é o provider que iremos utilizar, temos dois providers disponíveis. O DataProtectionConfigurationProvider usa DPAPI e o RSAProtectedConfigurationProvider usa a criptografia de chave pública do RSA.

 

Repare que na (Figura 1) eu tenho uma outra sessão chamada <appSettings> que também poderia ser criptografada.

 

5. Após o comando ser digitado pode ver a resposta de sucesso da criptografia. (Figura 5).

Figura 5 – Sucesso do comando.

 

 

6 . Com isso podemos voltar para Visual Studio e visualizar a string de conexão criptografada, mas antes de visualizar o Web.Config será exibida uma mensagem informando que o arquivo foi modificado e se deseja carregar estas modificações (Figura 6), clique em Sim.


Figura 6 – Aviso de modificação no arquivo Web.Config.

 

7. Em seguida, finalmente, podemos visualizar a string de conexão criptografada. (Figura 7).

Figura 7 – String de conexão criptografada.

 

 

Vimos que  através dos passos acima é bem simples criptografar a string de conexão no arquivo Web.Config.

 

Abraços e até o próximo.  

 

voltar   comente  subir

Download Copy





 
Mauricio Junior Formado pela Faculdade Anhanguera, Especialista pela FGV (Fundação Getúlio Vargas), Pós-Graduação em Docência Superior e cursando Mestrado na UNB Engenharia Elétrica; .
Tenho 29 anos e possuo sete livros publicados pela editora Ciência Moderna. Sou Certificado Microsoft MCP, MCAD e MVP, faço parte da comunidade ASPNETI.COM, ECODE10.COM, onde publico artigos, vídeos, ebooks e livros Publico artigos, vídeos e podcast em outras comunidades. Trabalho como Analista de Sistemas / Desenvolvedor na empresa ATP S/A. Blog: blog.mauriciojunior.org, Site pessoal www.mauriciojunior.org



Comentários:

Comentado por: Mauricio Junior - 22/6/2006 22:35:38
Fabio,
parabens pelo artigo, muito bom mesmo. a dinâmica e assunto abordado. abraços.
Comentado por: Daniel Gianni - 28/6/2006 7:40:42
Na verdade a última tela mostra um erro no processo pois não encontrou ConnectionString, não seria porque o certo era usar o nome cnnString como está definido no arquivo?
Comentado por: jackson luiz - 24/3/2008 0:00:00
boa tarde !!!!
um aduvida ....
não consigo acesar o orhut
pois diz estar cripteografada
alguma coisa assim
tem um cadeado no lado
do navegador .
como eu posso tirar isso ????

aguardo respostas obrigado !!!!

Comente (dê sua opinião):

Comentário:
Código Imagem:  (digite o código da imagem respeitando maiúsculo e minúsculo)

Favor digitar o código da imagem para cadastramento.

 

Outros Artigos do Autor

Vídeo - Teste do Windows 7 RC
Vídeo - Conecte
Escrevendo no EventView
O futuro da tecnologia com a Microsoft
Código fonte aberto
Windows Form - Retornando valor entre formulários
Exemplos de Queries Linq
PDF Free - Programando para Windows Phone 7
IsAlphaNumeric
Vídeo: Framework de dados - parte 1
Criando menu dinâmico com C#.NET (Passo 2) - Com diferenciação de usuário
Vídeo - Microsoft Surface: The Power
LG Optimus 7 com Windows Phone 7
Método MD5
Chamando Programas de Dentro do Windows Forms
ReportViewer sem DataSet Tipado e gerando PDF
SmartNavigation – 1.0 e 1.1 MaintainScroll PositionOn Postback – 2.0
Criando Números Aleatoriamente
MSDN Media Center - download de vídeos
Vídeo: Windows Phone com Windows Mobile 7
Sistema com Auditoria
Tudo Sobre DataGrid - (ASP.NET e C#)
Vídeo - Criptografia e Descriptografia
Loja Apple (a2you.com.br) feita em .NET (Microsoft)
Generics usando Object DataSource
Microsoft® Expression® Web
Sistema de Login em ASP – Parte VI
Teclas de atalho - Visual Studio .NET 2005
Fazer Log, precisa ou não precisa?
Confirm Button com JavaScript
Review do Windows Phone, Games e Aplicativos
CES em Las Vegas
Definindo o botão padrão.
Máscara valor que funciona
Usando ProgressBar com Visual Studio.NET 2005




eCode10 Magazine 4 Edição

Baixe a sua sem pagar nada, basta apenas ter um cadastro na comunidade aspneti.com ou ser usuário do ecode10.com.



Edições anteriores
LAYERDEV

Notícias *

Visão do Futuro - Day of Glass 2

Futuro próximo pode chegar cedo?...

Lenovo de 14 polegadas IdeaPad

Veja o novo notebook Lenovo IdeaPad...

Windows 8 Store

Channel9 publica um vídeo da Windows Store...

Sony Vaio série Z

Novo Vaio Ultrabook? ou não Ultrabook?...

Samsung quer comprar RIM

Imagine se juntar as duas companhias...

Surface 2.0 mostrado

Novo Surface é mostrado de forma incrível...

Skype Tablet

Será que esse skype tablet pega mesmo?...

Lenovo e o seu novo Ultrabook

Ultrabook chega também pela Lenovo...

Promoções de livros móveis .NET

Baixa agora o seu e aprenda a programar....




NETITC