Boa tarde.
A tabela que o Regys te falou acima guarda cada conexão feita no banco, bem como usuário, aplicativo etc.
Você pode criar uma trigger de conexão (disponível a partir do Firebird 2.1) para "monitorar" quem está conectando ao banco.
Por exemplo, ao ocorrer uma nova conexão ao banco, verifique o campo MON$REMOTE_ADDRESS (iP de onde veio a conexão) e liberar determinados IP's,
Também pode-se verificar o campo MON$REMOTE_PROCESS que é o nome do aplicativo que está sendo utilizado na conexão com o banco. Neste caso o aplicativo está com o path completo.
Caso a nova conexão não esteja dentro dos parâmetros especificados, efetue um delete do registro na tabela que a conexão é encerrrada.
Essa é uma forma de você "bloquear" acessos ao BD.
Lembrando, que o próprio Firebird permite desabilitar trigger na conexão, utilizando parâmetro "isc_dpb_no_db_triggers' no próprio IBExpert que você irá conectar ao banco, sem a trigger seja executada.
Atenciosamente.