Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Bom dia pessoal,
Montei um sistema para marcação de ponto e controle de horas(bem simples só mesmo para controle interno), mas estou com o seguinte problema : Gostaria que o funcionário tivesse acesso ao sistema de marcação de ponto apenas no computador da empresa, tentei realizar o procedimento através da amarração do mac(via php) mas no servidor web não funciona, como o ip da internet é dinâmico fica inviável amarrar pelo mesmo.
Será que alguém tem alguma idéia do que pode ser feito para limitar o uso do sistema apenas nos computadores da empresa?!
Desde já agradeço a atenção de todos.
Vitor Molina
Samuel Gomes, obrigado pela atenção. Mas por questões de segurança os servidores desabilitam a função shell_exec.
Acho que terei que colocar um ip fixo para cada máquina e cadastrar no banco.
Valeu muito obrigado.
vmolina, dependendo de como está sua rede, isso não irá funcionar, pois pode vir o IP do modem (Ex: 192.335.827.91) ou vir o da máquina (192.0.0.1) - e isso também não adiantaria muito, já que qualquer pessoa pode atribuir um ip fixo e entrar no seu sistema. Logo seria uma "falsa segurança".
O sistema está rodando em servidor local ou na internet? Se for servidor local, só habilitar o shell_exec.
Maykel-ctba, bem pensado será uma falsa segurança. o sistema a princípio iria rodar na internet, mas to quase desistindo to pensando seriamente em montar o servidor em uma maquina aqui da empresa e colocar pra roda local.
Obrigado pela dica
Através das dicas do Maykel-ctba acabei optando por deixar o sistema rodando local, transformei um maquina aqui da empresa em um servidor.
Vou usar o script que o Samuel Gomes_148425 me passou para fazer o controle do MAC.
Agradeço vocês pela ajuda.
/*
*CRIADO POR: ALEXANDRE GOMES DE LIMA SILVA
* blog: silvalexandre.wordpress.com
*MANTER CRÉDITOS
*/
$shell = shell_exec('ipconfig -all');//Executa o comando na shell passado por parâmetro
$pattern = "/[0-9A-f]{2}-[0-9A-f]{2}-[0-9A-f]{2}-[0-9A-f]{2}-[0-9A-f]{2}-[0-9A-f]{2}/";//Padrão para pesquisar a MAC no comando
preg_match($pattern, $shell, $resp);//Função que procura pelo padrão
echo $resp[0];
Ou tenta usar esse código aqui, senão me engano, ele pega o id do hd
var_dump(shell_exec('wmic DISKDRIVE GET SerialNumber 2>&1'));