le soluzioni potrebbero essere due:
1-utilizzi dei permessi di accesso gestiti nel database...come hai detto di aver fatto...ma forse non sei riuscito ad ottimizzarlo
2-utlizzi un javascript che legge gli indirizzi IP, li controlla, e permette gli accessi a chi è autorizzato...quindi doppio controllo...di indirizzi e di passw