A method for automatically limiting access of a client computer to data
objects accessed through a server computer dynamically prevents robots or
webcrawlers from obtaining too much of the server database and from
dramatically reducing server performance. The method includes the steps of
receiving a request for a data object, recording a log entry for the
request, calculating client request values, and refusing the request if a
client request value exceeds one of a set of corresponding predefined
maximum request values. Each log entry contains a client identifier,
timestamp, and at least one data object identifier for the request. The
client request values preferably include a request frequency, which is
compared with a predefined maximum request frequency, and a cumulative
data request, which is compared with a data access threshold. If the
client is refused access, the client identifier is added to a deny list,
and future requests from the client are automatically denied. The
calculated cumulative data request may be for a single client, or it may
be for all clients, in order to detect a robot that is divided among
multiple client identifiers. The cumulative data request check may
consider the total percentage of server resources being given away, or a
pattern in the requests. Also provided is a data protection system
containing a log file, a request analyzer, and a dynamically-generated
deny list. Requests to the server are intercepted and sent to the data
protection system first.
Um método para automaticamente limitar o acesso de um computador do cliente aos objetos dos dados alcançados através de um computador de usuário impede dinâmicamente que os robôs ou os webcrawlers de obter demasiada da base de dados do usuário e reduzam dramàtica o desempenho do usuário. O método inclui as etapas de receber um pedido para um objeto dos dados, gravando uma entrada do registro para o pedido, valores calculadores do pedido do cliente, e recusar o pedido se um valor do pedido do cliente exceder um de um jogo de valores máximos predefinidos correspondentes do pedido. Cada entrada do registro contem um identificador do cliente, timestamp, e ao menos um dados objeta o identificador para o pedido. Os valores do pedido do cliente incluem preferivelmente uma freqüência do pedido, que seja comparada com uma freqüência máxima predefinida do pedido, e um pedido cumulativo dos dados, que seja comparado com um ponto inicial do acesso dos dados. Se o cliente for acesso recusado, o identificador do cliente está adicionado a uma lista negar, e os pedidos futuros do cliente são negados automaticamente. O pedido cumulativo calculado dos dados pode ser para um único cliente, ou pode ser para todos os clientes, a fim detectar um robô que seja dividido entre identificadores múltiplos do cliente. A verificação cumulativa do pedido dos dados pode considerar a porcentagem total dos recursos do usuário que estão sendo dados afastado, ou um teste padrão nos pedidos. É fornecido também um sistema de proteção dos dados que contem uma lima de registro, um analisador do pedido, e dinâmico-gerado nega a lista. Os pedidos ao usuário são interceptados e emitidos ao sistema de proteção dos dados primeiramente.