Sistema de Autenticação em PHP - Parte1


Sistemas baseados em WEB são cada vez mais comuns. Não são raros os casos de sistemas de empresas rodando inteiramente na internet/intranet/extranet, mas porque será que os sistemas estão tomando esse rumo?


Um dos grandes motivos para essa internetização é a mobilidade na hora do acesso, não podemos esquecer da facilidade de manutenção e atualização (Você atualiza/mantem apenas o servidor e não um monte de estações cliente) e também da indepêndencia da plataforma cliente, que passa a requerer apenas um browser.


Tudo isso é muito legal, muito bonito, mas também é necessário que o desenvolvedor/equipe desenvolva algo realmente independente e uma ótima forma de desenvolver um sistema robusto e com custos não muito elevados (principalmente com licenças de software para o servidor) é a utilização de servidores GNU/Linux, com o servidor HTTP Apache, uma linguagem de script como o PHP e um SGBD como o MySQL ou o PostgreSQL.


E como todo sistema empresarial requer autenticação do usuário, seja para manter registros de atividades, seja para dar acesso à determinadas área, em sistemas WEB a coisa não é diferente. Mas aqui surgem questões vindas de desenvolvedores desktop: Como manter dados/variáveis entre as páginas do sistema? Sim essa questão é muito comum, e por mais que a WEB esteja ficando "dinamica" ela ainda é uma coisa muito "estática", o desenvolvimento WEB tem grandes diferenças do desenvolvimento desktop.


Então essa série de artigos visa demonstrar o desenvolvimento de um sistema de autenticação simples, utilizando a linguagem PHP e tendo como métodos de armazenagem de variáveis as sessões e os cookies.


Então vamos montar um roteiro a ser seguido, o precisamos é:




- Definir o escopo do 'projeto';- Criar um pequeno fluxograma do que o sistema fará;
- Preparar o banco de dados;
- Desenvolver o script de autenticação;
- Adicionar a obrigatoriedade de estar "logado" para acessar as páginas.

Bem, com a lista pronta podemos continuar.


O que nosso sisteminha fará: Haverá uma página para que o usuário se identifique digitando o nome do usuário, a senha e selecionando, ou não, a opção "lembrar de mim", essa opção serve para que a pessoa não precise se identificar toda vez que acessar a página. Não preciso comentar que isso não é muito seguro né? Ainda mais para sistemas empresariais, mas aqui vamos oferecer a opção, também como modo de aprender.


Haverá também um script que recebe os dados da página de login e autentique o usuário da forma escolhida, com ou sem o "lembrar de mim".


E por último cada página acessada fará a verificação se o login ainda é válido.


Então o nosso fluxograma deve ser este:


Histograma


Por enquanto é isso. Nos próximos capítulos vamos construir o banco de dados, falar e por em prática os conceitos de sessões e cookies e é claro fazer o login!


 


InFog


Evaldo Junior

Desenvolvedor web, palestrante, escritor e usuário e contribuidor do Software Livre.

comments powered by Disqus