DataAdapter

Para os desenvolvedores que utilizam DataSets e DataAdapter, aqui vai uma dica:

Quando utilizamos o DataAdapter, não há a necessidade de abrirmos a conexão com a Base de Dados manualmente, pois ele se encarrega de fazer isso implicitamente. Basta informar a ConnectionString:

Imports System.Data.SqlClient

Dim ds As New DataSet()
Dim da As New SqlDataAdapter(“SELECT * FROM authors”, “ConnectionString”)
da.Fill(ds)
Me.DataGrid1.DataSource = ds

“Hasheando” Passwords

Quando falamos em aplicações seguras, acho que não podemos descartar a opção de guardarmos na Base de Dados a senha “Hasheada”.

O FormsAuthentication nos dispõe um método para “hashear” a senha do usuário e com isso compararmos se está identica à da Base de Dados. O método para isso é o FormsAuthentication.HashPasswordForStoringInConfigFile() qual recebe como parametro o valor à ser “hasheado” e o tipo de Hash (“SHA1” ou “MD5”) . Exemplo:

FormsAuthentication.HashPasswordForStoringInConfigFile(Me.txtSenha.Text.Trim, “SHA1”)

Utilizando uma Senha como “israel”, veja o resultado:

MD5: 3F8454B7F2C12CEBB1622B6B0DFD1021
SHA1: 8F4F9F2DCBAF9BD8EE9E4D1A2CB971A04084157B

Importante: O Hash é irreversível, ou seja, uma vez “hasheado” não possível saber o que existe aí (até agora :P). Isso torna a aplicação bastante segura, uma vez que nem o sistema sabe qual a senha de um determinado usuário.

OBS.: Para utilizá-lo é necessário importar o System.Web.Security