[SP-pm] Autenticador Squid em Perl

Mike Tesliuk mike em braslink.com
Quinta Junho 5 10:15:07 PDT 2008


eu quis dier

if(!$senha || !$usuario){
	print "ERR\n";
}



:)


----------------------------------
Mike Tesliuk
Administrador de Sistemas
Braslink Networks
Phone: +55 11 2104 0005
Fax: +55 11 3544 4401


Mike Tesliuk wrote:
> na verdade a senha vazia pode ser encarada como um tratamento de erro, 
> afinal, se um usuário usa um navegador com suporte a abas (acho que 
> todos hoje tem isso) nada impede de sem querer, o usuario não preencher 
> a senha em uma das janelas de autenticação ( tenho alguns usuários que 
> deixam várias paginas abertas, então quando o navegador abre, ele pede 
> por exemplo 5x o usuario e senha).
> 
> acredito que a questão possa ser feita facilmente, if(!password || 
> !$senha) então ele ja retorna ERR
> 
> 
> ----------------------------------
> Mike Tesliuk
> Administrador de Sistemas
> Braslink Networks
> Phone: +55 11 2104 0005
> Fax: +55 11 3544 4401
> 
> 
> Alexei Znamensky wrote:
>> Gabriel,
>>
>> #2 perfeitamente correta, sim, ficou faltando o ERR em caso de senha 
>> existente porém errada.
>>
>> para a pergunta #1, sem entrarmos na questão de quão efetivo é ter um 
>> mecanismo de authenticação se não há senha, o que você precisa fazer é 
>> usar a regexp:
>>
>> m{^(\S+)\s(.+)?$}
>>
>> com a interrogação, denotando que a senha é um parâmetro opcional. Nesse 
>> caso você poderá deixar o código com somente:
>>
>> my ( $user, $password ) = m{^(\S+)\s(.+)$};
>> print is_valid( $user, $password )?"OK\n":"ERR\n";
>>
>> Não há necesisdade de fazer o primeiro teste:
>>
>> a) da forma como o Fields colocou antes era para testar senha vazia, que 
>> no seu caso é algo que você quer (why??? oh god, why??)
>> b) da forma como você colocou ele vai testar se houve match ou não, o 
>> que irá retornar sempre true, ou seja, o print "ERR\n" nunca será executado.
>>
>> De qualquer maneira, pode ser removido.
>>
>> []s,
>> Russo
>>
>>
>>
>> 2008/6/5 Gabriel Vieira <gabriel.vieira em gmail.com 
>> <mailto:gabriel.vieira em gmail.com>>:
>>
>>     1) Se o usuário colocar apenas "login " haverá falha na REGEX, então
>>     por que não usá-la como validador direto? A senha pode ser em branco?
>>     2) Caso a senha e o login não batam, precisaria retornar caso tivesse
>>     erro, certo?
>>
>>
>>     print "ERR\n" unless my ( $user, $password ) = m{^(\S+)\s(.+)$};
>>     print is_valid( $user, $password )?"OK\n":"ERR\n";
>>
>>
>>
>>     2008/6/5 Luis Motta Campos <luismottacampos em yahoo.co.uk
>>     <mailto:luismottacampos em yahoo.co.uk>>:
>>      > Fernando Oliveira wrote:
>>      >> # Não seria melhor assim, p/ possibilitar senhas com espaço?
>>      >>    my @userPass = split / /;
>>      >>    my $user = $userPass[0];
>>      >>    my $password = join " ", @userPass[1 .. $#userPass];
>>      >
>>      > Hum. Senhas podem ter espaços. Certo, mudança de estratégia. Nada de
>>      > usar split().
>>      >
>>      > #!/usr/bin/perl
>>      > use strict;
>>      > use warnings;
>>      > use IO::Handle;
>>      >
>>      > STDOUT->autoflush(1);
>>      > STDERR->autoflush(1);
>>      >
>>      > # implement your password validation here
>>      > sub is_valid;
>>      >
>>      > while (<>) {
>>      >
>>      >     # captura um username (sem espaços, seguido de um
>>      >     # espaço, seguido de qualquer coisa ( a senha).
>>      >     my ( $user, $password ) = m{^(\S+)\s(.+)$};
>>      >     print "ERR\n" unless $password;    # do not accept empty
>>      >     print "OK\n" if is_valid( $user, $password );
>>      > }
>>      > __END__
>>      >
>>      > Putamplexos!
>>      > --
>>      > Luis Motta Campos (a.k.a. Monsieur Champs) is a software engineer,
>>      > Perl fanatic evangelist, and amateur {cook, photographer}
>>      > _______________________________________________
>>      > SaoPaulo-pm mailing list
>>      > SaoPaulo-pm em pm.org <mailto:SaoPaulo-pm em pm.org>
>>      > http://mail.pm.org/mailman/listinfo/saopaulo-pm
>>      >
>>
>>
>>
>>     --
>>     Gabriel Vieira
>>     _______________________________________________
>>     SaoPaulo-pm mailing list
>>     SaoPaulo-pm em pm.org <mailto:SaoPaulo-pm em pm.org>
>>     http://mail.pm.org/mailman/listinfo/saopaulo-pm
>>
>>
>>
>>
>> -- 
>> Alexei Znamensky [russoz_gmail_com] [russoz.wordpress.com 
>> <http://russoz.wordpress.com>] [www.flickr.com/photos/alexeiz 
>> <http://www.flickr.com/photos/alexeiz>]
>> "Though we live in trying times, we're the ones who have to try"
>>
>>
>> ------------------------------------------------------------------------
>>
>> _______________________________________________
>> SaoPaulo-pm mailing list
>> SaoPaulo-pm em pm.org
>> http://mail.pm.org/mailman/listinfo/saopaulo-pm
> _______________________________________________
> SaoPaulo-pm mailing list
> SaoPaulo-pm em pm.org
> http://mail.pm.org/mailman/listinfo/saopaulo-pm
> 
> 


Mais detalhes sobre a lista de discussão SaoPaulo-pm