Busca Online:
 

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

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



Data Publicação: 22/6/2006 21:54:32
Total de visualizações: 12889

comente
Diminuir o tamanho das letras Aumentar o tamanho das letras


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.  

 



Total de visualizações: 12889
voltar   comente  subir


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): VOCÊ PRECISA LOGAR

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

Nova promoção hoje e amanhã para usuários da comunidade aspneti.com
Ajax com Visual Studio.NET 2005
Pesquisa de Mestrado, pedido de ajuda
Visual SourceSafe – Série 6
Registro .COM.BR com CPF
Windows Home Server
Cookies
OpenWave SDK 6.2.2
Copiando Script
XAML Power Toys
Certificação - Segunda Chance
Java J2EE – Primeiro Passo
Trabalhando com Session
Instalando o .NET Compact Framework 2.0 SP2 em seu Dispositivo Móvel
Web abrindo aplicações locais
Adicionando Menu no DataGridView
Problemas no sistema de busca
User Control Windows executando no Internet Explorer (parte 1 de 2)
Resource e Internacionalização – Parte V Usando Visual Studio.NET 2005
Nem tudo é o que parece!
Padrão de Codificação
SELECT INSERT
Vídeo - Microsoft Surface Sphere
Win the 7
Pedido de desculpas
Desenvolvendo Sistema para Celular
Imprimir com Visual Studio.NET 2005 usando C#.NET.
Escrever log de erro e warning
Sistema de Login em ASP – Parte III
Comunicação .NET e VB 6.0 – Parte I
Virtual Earth - Segundo Passo
Public Interface
Evento Java versus DotNet
Mudar de MasterPage em Tempo de Execução
Criando Alias no Pacote
Sobre o Autor
  [sumir] [aparecer]
 
Mauricio Junior Maurício Júnior
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 27 anos e possuo sete livros publicados pela editora Ciência Moderna no ano de 2009. Sou Certificado Microsoft MCP, MCAD e MVP, faço parte da comunidade ASPNETI.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.orgSite pessoal  www.mauriciojunior.org

Informações Online
Usuários Online: 1515
Artigos:  729
Vídeos:  59
PodCast's:  42
Fórum:  3127
Empregos:  1359
Usuários Cadastrados: 6080
Publicidade
LAYERDEV




Enquete ASPNETi.COM
 Os podcasts tem sido proveitoso pra você?

Favor logar para votar
 
Publicidade Vertical
NETITC