Authenticação/Limite de usuarios

1. Authenticação/Limite de usuarios

cléo
sayde

(usa Outra)

Enviado em 07/05/2016 - 20:01h

Boa noite gostaria de ajuda com meu script minha intenção e essa o cliente tem outro script que envia 2 dados no caso o ip e usuario, queria ler o ip e delimitar 5 usuários nesse determinado ip se fosse tentando logar o sexto o código avisaria e retornaria.

Tentativas até agora

	my	%data = ($args->{args}{'IP'} => $args->{username}); #Recebe o ip e o username
my @IP = keys %data;
my @Users = values %data;
my $size = @Users;

foreach my $IP (@IP) {
if ($IP && $size > 5) { #Aqui seria a verificação se estivessem mais de 5 usuários no ip falharia a autenticação

print "Limite máximo de conexão atingido\n";

return $args->{auth_failed};

}
}



  


2. Re: Authenticação/Limite de usuarios

Daniel Vinciguerra
dvinciguerra

(usa Debian)

Enviado em 08/05/2016 - 10:45h

Ola,

Não sei como esta a coisa ou como você esta fazendo isso... é uma aplicação web? uma API?

Do mais, para resolver isso você pode usar um storage (banco NoSQL tipo Redis, por exemplo), armazena as informações de ip + username lá e pegue quando um novo ip + username for enviado para validar a sua regra.

Isso deve resolver a principio!

Abs


3. Re: Authenticação/Limite de usuarios

cléo
sayde

(usa Outra)

Enviado em 08/05/2016 - 10:59h

e pra uma api não teria alguma forma de não precisar um banco de dados só armazenar em uma variável?


4. Re: Authenticação/Limite de usuarios

Daniel Vinciguerra
dvinciguerra

(usa Debian)

Enviado em 08/05/2016 - 14:12h

Tudo depende de quão confiável você quer que sua solução seja...

Você sempre pode fazer uma solução em pure-perl mas acho que você não deveria pois teria que pensar em disponibilidade, escalabilidade, confiabilidade, etc...

Como disse não sei qual a sua necessidade real mas você vai precisar de algum lugar para guardar essas informações, controlar timeout dos logins, talvez o que você queira fazer não seja tão simples assim infelizmente, principalmente em se tratando de uma API.

Abs




  



Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts