Ganhe dinheiro com seu site, conheça a Vitrine Fácil Buscapé! ;)




O desenvolvedor é um blog sobre desenvolvimento web, não tratando apenas de programação mas também compartilhando experiências, métodos, debates e tendências da internet.

O Desenvolvedor é um blog de www.andafter.org
Resumo

Sistema se login em ASP com nível de usuário e sem utilizar banco de dados.

Buenas povo!

Aqui vai um exemplo prático de como fazer um sistema de login simples em ASP[bb] , com dois níveis de usuários (e apenas dois usuários) mas sem utilizar Banco de Dados[bb]

Vamos iniciar fazendo o formulário de login, que ficará no arquivo default.asp, e será assim:

 

<form action="login.asp?a=login" method="post" name="flogin" id="flogin">
<p>Usuário 
<input type="text" name="usuario" id="usuario">
</p>
<p>Senha 
<input type="text" name="senha" id="senha">
</p>
<input type="submit" name="Login" id="Login" value="Login">
</form>
<%
response.write session("mensagem")
session("mensagem") = ""
%> 

 

 

Perceba que a página do formulário imprime a sessão "mensagem", logo você vai entender o motivo. Com o formulário criado, precisamos de uma página que vá:

  1. Receber os dados do formulário
  2. Verificar o usuário e a senha
  3. Criar os cookies ou sessões para autenticar o usuário

A página que fará isso se chamará login.asp, e o código dela:

<%
if request.querystring("a") = "login" then
    dim user
    dim senha
    user = request.form("usuario")
    senha = request.form("senha")
   
    ´Verifica se é o administrador
    if user = "andafter" then
        if senha = "senhaaqui" then
            ´ Se usuário e senha conferem cria as sessões e redireciona para a página logado.asp
            session("usuarioOD") = "andafter"
            session("nivelOD") = 10
            response.redirect "logado.asp"
        else
            ´ Se a senha não conferir manda devolta para o formulário, com a sessão mensagem informando erro no usuário ou senha
            session("mensagem") = "Usuário ou senha não encontrados"
            response.redirect "default.asp"
        end if
    end if
   
    if user = "odesenvolvedor" then
        if senha = "blabla" then
            session("usuarioOD") = "odesenvolvedor"
            session("nivelOD") = 5
            response.redirect "logado.asp"
        else
            session("mensagem") = "Usuário ou senha não encontrados"
            response.redirect "default.asp"
        end if
    end if
   
    ´Se não veio com ação nenhuma envia para o formulário
    session("mensagem") = "Usuário ou senha não encontrados"
    response.redirect "default.asp"
end if

%>

Agora o usuário já está "logado" e o que falta é impedir o acesso as páginas restritas para quem não estiver logado. Vamos fazer isso verificando a existência da session "nivelOD".

Como essa verificação é necessária em todas as páginas, vamos criar um arquivo chamado seguro.asp que fará a verificação, depois usando include vocêd eve adicionar esse arquivo em todas as páginas restritas do site.

Código do seguro.asp:

<%
if session("nivelOD") = "" then
    session("mensagem") = "Você não está autorizado a acessar esta página."
    response.redirect "default.asp"
end if
%>

Pronto, os usuários que não estiverem logados serão redirecionados para a default.asp, tudo o que você precisa fazer é dar um include da página seguro.asp no início de todas as página protegidas.

Fácil, não?

Se tiverem dúvidas perguntem pro Chris Benseler, críticas e sugestões utilizem os comentários.



Tags: asp, programacao, seguranca, scripts, internet,

  • Rec6
  • ueba
  • linkk
  • dihitt
  • linkloko
  • websapiens
  • linkto
  • Eu curti
Chris Benseler
14/5/2008 10:53:00

Pow, não fala pra perguntarem pra mim; séculos que não programo em ASP! haha
Sabe o que seria uma boa pra script? Colocar uma criptografia MD5 ae...

PS: chupinhado do google - http://forum.imasters.uol.com.br/index.php?showtopic=126822
Guilherme Serrano
14/5/2008 11:07:00

eu falei pra perguntarem pro chris, eu falei! :D
haha

Valeu a dica!
RUBENS
13/6/2008 14:43:00

banco de dados


Nome (requerido)

E-mail (requerido - não será divulgado)

URL

Quanto é 4 + 1?

Comentário

web tracker