Mostrando postagens com marcador sessão. Mostrar todas as postagens
Mostrando postagens com marcador sessão. Mostrar todas as postagens

sexta-feira, 12 de abril de 2013

Criptografar senha

Aqui vai uma dica de como criptografar uma senha.

Eu particularmente utilizo um método um pouco peculiar mas que já vi várias pessoas utilizando.
No exemplo abaixo eu concateno  usuário e senha criando um Hash com essa informação. veja o exemplo:


using System.Security.Cryptography;


public static string AcertaSenha(string _login, string _senha)
{
    StringBuilder senha = new StringBuilder();

    MD5 md5 = MD5.Create();
    byte[] entrada = Encoding.ASCII.GetBytes(_login + "//" + _senha);
    byte[] hash = md5.ComputeHash(entrada);
    StringBuilder sb = new StringBuilder();
    for (int i = 0; i < hash.Length; i++)
    {
senha.Append(hash[i].ToString("X2"));
    }
    return senha.ToString();
}

Se eu passar o usuário "celso" e a senha "12345" o resultado será:
321F8F2C95B3AE3F5B9DAD4B58CF1819

em outra situação, se eu passar o usuário "CELSO" e a senha "12345" o resultado será:
5B105E94EB8276DB9738A92AFF8A490F


:)

quarta-feira, 10 de abril de 2013

Sessão - ASP.Net

As vezes precisamos manter algumas informações na memória para utilizar em qualquer lugar do site e
enviar informações por post ou query string nem sempre é a solução. A solução nesse caso é a utilização da sessão.

Sempre que acessamos um  site automaticamente u ma sessão é criada.

Podemos manter qualquer tipo de informação na sessão, texto, valores, imagens.  por exemplo:

Session["Nome"] = "Celso Zequim";

Para resgatar o valor da sessão é simples:

string nome =(string) Session["Nome"];

Esse valor estará disponível em qualquer página do site.

também é possível incluir um objeto na sessão.  por exemplo:

Criei um objeto para guardar o nome e o email do usuário logado no sistema.

public class UsuarioLogado
{

    public string Nome;
    public string email;
    public UsuarioLogado() { }
}

no arquivo Global.asax.cs indiquei no inicio da sessão qual é o objeto a ser carregado.
protected void Session_Start(object sender, EventArgs e)
{
    UsuarioLogado usuario = new UsuarioLogado();
    Session["UsuarioLogado"] = usuario;
}

ou seja, toda vez que alguém acessar o site, automaticamente será criado um objeto UsuarioLogado na sessão.
para atribuir um valor a esse objeto é só seguir o exemplo:

UsuarioLogado usuario = (UsuarioLogado)Session["UsuarioLogado"];
usuario.Nome = "Celso";
usuario.email = "czequim@gmail.com";