# US 2013/0159497 A1 · Heuristic-Based Rejection of Computing Resource Requests

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2013/0159497 A1
- Document ID: US20130159497A1
- Status: Published application
- Kind: A1
- Application number: 13/328,271
- Filed: 2011-12-16
- Published: 2013-06-20
- Earliest claimed: 2011-12-16
- Assignees: Microsoft Corporation
- Inventors: Michael Gene Butler; Huangjian Guo; Gleb Kholodov; Siddhartha Mathur; David Sterling; Zhengwen Zhu
- Web page: https://patentgrep.com/patent/US20130159497A1

## CPC

- G06F 21/6218: {to a system of files or objects, e.g. local or distributed file system or database}
- G06F 2221/2135: Metering
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A computing system includes an authentication layer, the authentication layer being programmed to receive a request for resources of the computing system and to authenticate an identity of a user requesting the resources, and a command layer, the command layer being programmed to execute one or more commands from the request for resources, wherein the command layer logs characteristics associated with one or more of the commands, wherein the computing system monitors each logged command to determine when a threshold is met, and wherein the computing system blocks a subsequent request for resources from the user when the threshold is met.

## Claims

### Claim 1

A computing system, comprising:
a processing unit; and
system memory encoding instructions that, when executed by the processing unit, create:
an authentication layer, the authentication layer being programmed to receive a request for resources of the computing system and to authenticate an identity of a user requesting the resources; and
a command layer, the command layer being programmed to execute one or more commands from the request for resources;
wherein the command layer logs characteristics associated with one or more of the commands;
wherein the computing system monitors each logged command to determine when a threshold is met; and
wherein the computing system blocks a subsequent request for resources from the user when the threshold is met.

### Claim 2 (depends on 1)

The computing system of claim 1, wherein the command layer logs each failed command, the computing system monitors each failed command to determine when the threshold is met, and the authentication layer blocks the subsequent request for resources.

### Claim 3 (depends on 2)

The computing system of claim 2, further comprising:
an authorization layer, the authorization layer being programmed to receive the request for resources of the computing system and to authorize the user to access the resources;
wherein the authorization layer logs each failed authorization.

### Claim 4 (depends on 3)

The computing system of claim 3, wherein characteristics associated with the failed command and the failed authorization are stored in a repository.

### Claim 5 (depends on 4)

The computing system of claim 4, wherein a blacklist is created based upon information in the repository.

### Claim 6 (depends on 5)

The computing system of claim 5, wherein the blacklist includes at least one entry, the entry including characteristics associated with the user having exceeded the threshold.

### Claim 7 (depends on 2)

The computing system of claim 2, wherein characteristics associated with the failed command are stored in a repository, and wherein a blacklist is created based on information in the repository.

### Claim 8 (depends on 7)

The computing system of claim 7, wherein the blacklist includes at least one entry, the entry including characteristics associated with the user having exceeded the threshold, including at least a user identification.

### Claim 9 (depends on 7)

The computing system of claim 7, wherein the blacklist is pushed to the authentication layer.

### Claim 10

A method for throttling requests for resources, the method comprising:
receiving, by a computing device, a request for resources of a computing system;
processing, by the computing device, the request to identify a characteristic of the request for resources;
comparing the characteristic to a list;
when the characteristic is found on the list, blocking the request; and
when the characteristic is absent from the list, passing the request on for further processing.

### Claim 11 (depends on 10)

The method of claim 10, wherein passing the request on for further processing includes authenticating an identity of a user making the request for resources.

### Claim 12 (depends on 11)

The method of claim 11, wherein passing the request on for further processing includes providing access to the requested resources.

### Claim 13 (depends on 12)

The method of claim 12, wherein passing the request on for further processing includes authorizing the user for access to the resources.

### Claim 14 (depends on 13)

The method of claim 13, wherein passing the request on for further processing includes logging a failure while authorizing or providing access to the requested resources.

### Claim 15 (depends on 14)

The method of claim 14, further comprising creating the list to include one or more characteristics associated with the failure.

### Claim 16 (depends on 15)

The method of claim 15, further comprising identifying the characteristics to include a user identification of the user.

### Claim 17 (depends on 10)

The method of claim 10, wherein the request is blocked prior to authentication of a user making the request.

### Claim 18 (depends on 17)

The method of claim 17, wherein the request is blocked prior to authorization of the request or execution of the request.

### Claim 19

A physical computer-readable storage medium encoding instructions that, when executed by a processing unit, cause the processing unit to perform steps including:
receiving, by a computing device, a request for resources of a computing system;
processing the request to identify a characteristic of the request for resources;
comparing the characteristic to a list;
when the characteristic is not found on the list:
authenticating an identity of a user making the request for resources;
authorizing the user for access to the resources;
providing access to the requested resources;
logging a failure while authorizing or providing access to the requested resources; and
creating the list to include one or more characteristics associated with the failure, the characteristics including a user identification of the user; and
when the characteristic is found on the list, blocking the request, the request being blocked prior to authentication or authorization of the user making the request.

### Claim 20 (depends on 19)

The physical computer-readable storage medium of claim 19, wherein the request is blocked prior to execution of the request.
