[Cascavel-pm] CGI + Autenticação
Ednardo Lobo
ednardo em elobo.cjb.net
Quinta Fevereiro 13 17:16:40 CST 2003
On Thu, Feb 13, 2003 at 05:27:06PM -0200, |mouse| wrote:
> Ola, estou fazendo uns cgis em perl + apache e gostaria de implementar
> uma tela de login para que pudesse ser acessado as demais páginas...
>
> Não tenho nem idéia por onde começar, alguém pode me mostrar o início
> do caminho?
> --
>
>
>
> |mouse|
> Linux user #159540
> UiN #36351944
> WR 27
> Eletronic mail mouse em 200.247.227.246
> "Sem saber que era impossivel, ele fez."
> www.oscara.com.br/mouse
> www.joinvillepanzers.hpg.ig.com.br
Há duas formas de se fazer isso: uma simples e outra complexa
A forma simples, é através de uma reconfiguração no Apache. Essa
reconfiguração consiste em atribuir a uma determinada pasta abaixo do
seu diretório raiz (ROOT) ou no próprio, onde o site está hospedado, a
caracterista de protegida e atribuir-lhe um 'login/senha' de acesso.
Toda vez que alguém tentar acessar essa pasta o apache notificará o
navegador (ex: Mozilla, Netscape) da necessidade de um 'login/senha',
esse por sua vez apresentará uma tela ao usuário onde ele deverá
informar o 'login/senha'. Em muitos casos, essa reconfiguração só pode
ser feita pelo administrador do servidor, mas em alguns casos basta
apenas criar um arquivo chamado '.htaccess' na pasta que se deseja
proteger com a seguinte configuração (essa não é a única configuração
possível, mas para a maioria é adequada):
AuthType Basic
AuthName "Pasta protegida"
AuthUserFile htpasswd
Require valid-user
Essa não é a única configuração possível, mas para a maioria dos
casos é adequada. É preciso criar também o arquivo 'htpasswd' e
inicializá-lo com linhas no formato '<login>:<senha>' contendo o 'login'
e 'senha' de acesso. Por exemplo:
jose:kWrGsXDe/hIEs
A senha deve ser criptografada (SHA/MD5) e para isso, você pode
utilizar a função 'crypt' da própria Perl ou o programa 'htpasswd' que
acompanha o Apache.
A forma complexa, bem, na verdade realmente bastante complexa,
não sei ao certo como fazê-la! :-) Mas você precisará, no mínimo,
utilizar 'cookies' e um sistema para controle de sessão (recomendo
Apache::Session). E ainda assim, não sei se será tão eficiente e segura
quando a forma simples que expliquei anteriormente.
Boa sorte !!!
--
Ednardo Lobo - www.elobo.cjb.net
Por favor, evitem enviar anexos no formato MS-Office, obrigado!
Veja: http://www.fsf.org/philosophy/no-word-attachments.pt.html
--
BOFH excuse #320:
You've been infected by the Telescoping Hubble virus.
Mais detalhes sobre a lista de discussão Cascavel-pm