Recuperar mac address em aplicação web

8 respostas
A

Pessoal,

Alguém sabe uma forma eficiente de recuperar o mac address do usuário em uma aplicação web?

8 Respostas

E

Sempre me pergunto por que é que o pessoal pede isso - hoje em dia uma aplicação web pode estar rodando em um celular ou tablet, por exemplo… (OK, no caso do celular você sempre pode pedir o IMEI, e em um tablet 3G também)

Isso é para forçar a identificação do usuário? Não dá para usar um login e senha como todo mundo?

G

Infelizmente isso não tem jeito não…
O Mac Address é uma informação que pertence a uma camada bem mais abaixo no protocolo de rede, uma aplicação geralmente não tem acesso.

Seria possível ter essa informação (com restrições) fazendo uma gambiarra que é consultar a tabela ARP (integrando com o comando arp do sistema operacional) e comparando para ver qual dos MACs listados na tabela corresponde ao IP do usuário.
Mas veja que eu coloquei com restrições, e o motivo é: se o usuário passou por algum roteador ou firewall seu servidor nunca saberá o endereço físico da máquina; o endereço físico que chega na conexão é o do roteador.

G

O mais importante é considerar o questionamento do entaglement: será que você precisa mesmo disso?

Se for por razão de segurança, tem um detalhe que talvez você não esteja ainda ciente, mas faz toda a diferença: o MAC address usado pra subir uma placa de rece pode ser alterado com extrema facilidade (no Linux por exemplo o mesmo arquivo que configura o IP permite especificar um mac address), então não confie nisso.

A

Obrigado pelo retorno aí pessoal. Isso seria por questão de segurança mesmo. Pensei em fazer uma validação de login por (login, senha, cpf e mac address). Ou seja, pro cara poder acessar o sistema ele tem que ter o mac cadastrado antes. Será que não rola?

E

Antes o Net Virtua tinha uma aplicação de medição de consumo que exigia o Mac Address do cable modem, e ainda por cima você tinha de entrar com os dados manualmente :slight_smile: - acho essa uma das poucas coisas que fazem sentido.

Hoje em dia, acho que ele precisa apenas do login ou CPF do usuário, em vez dessa bizarrice de pedir o MAC address do modem, mas é que não estou conectado no Net Virtua e não sei como é que isso está funcionando.

R

Rola, porem isso nao ficaria a encargo da aplicacao, e sim do servidor.

Exemplo:

Seu servidor é linux, voce poderia criar um script para verificar cada nova conexao a ele, independente se seria pra determinada aplicacao ou nao.

no windows o comando para verificar conexoes é o netstat, no linux , se me lembro, é o nbstat ou nbtstat…

Porem reforcando, isso ficaria a encargo do servidor, e nao da aplicacao, e isso daria um trabalhinho a mais pro administrador e pro servidor em si.

A

É que estou tentando melhorar um pouquinho a segurança sabe. Criei um interceptor do vraptor pra verificar se o usuário está logado e pra controle de permissões, mas achei que talvez seria interessante recuperar o mac pra melhorar um pouco mais. Acho que implementar um controle de tentativa de acessos seria interessante também, o que acham?

E

Acho isso um pouco exagerado. Se quiser uma verdadeira solução de segurança, é necessário ter algo como aquele “token” que os bancos distribuem, o que é obviamente algo que envolve custo.

Criado 22 de novembro de 2012
Ultima resposta 22 de nov. de 2012
Respostas 8
Participantes 4