IP Library Granted Patent US 12,063,216
Granted Patent B2
US 12,063,216 · App. 17/875,813 · Granted Aug 13, 2024

Access control policy for proxy services

Inventors: Miroslav Kozlovski (Vilnius, LT); Gytis Ciuta (Vilnius, LT); Valdemar Karasevic (Vilnius, LT)
Assignee: OXYLABS, UAB
H04L63/0884H04L63/0281H04L63/20
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,063,216
App. No.
17/875,813
Granted
Aug 13, 2024
Kind
B2
Abstract

Systems and methods to manage and efficiently perform authorization of multiple proxy clients are disclosed. Furthermore, systems and methods to measure and check whether the web traffic of one or more client devices has reached a permissible limit of web traffic assigned by the proxy service provider. Specifically, a proxy is configured to gather and save authorization information of one or more clients within its memory. Therefore, the proxy server can verify and authorize one or more clients by utilizing the data from its memory. Furthermore, the proxy is configured to measure and report the utilized web traffic of one or more client devices to a messaging platform. In another aspect, systems and methods to check whether one or more client devices have reached a permissible amount of web traffic limit are disclosed.

Claims (65)

1. A computer-implemented method of authorizing a proxy request and reporting web traffic associated with a client, the computer-implemented method comprising:

obtaining, by a proxy server at a proxy service provider, client authorization data from a messaging platform, wherein the client authorization data comprises a status indicator;

storing, by the proxy server, the client authorization data within a memory of the proxy server;

receiving, by the proxy server, the proxy request from a client device, wherein the proxy request comprises a target uniform resource locator (URL) and a first set of authentication credentials;

retrieving, by the proxy server, the client authorization data from the memory, wherein upon retrieving the client authorization data, verifying, by the proxy server, the first set of authentication credentials in the proxy request by comparing the first set of authentication credentials to a second set of authentication credentials in the client authorization data;

after verifying the first set of authentication credentials, determining, by the proxy server, a state of the status indicator;

authorizing, by the proxy server, the proxy request when the state of the status indicator is set as active;

in response to authorizing the proxy request, executing, by the proxy server, the proxy request against the target URL or delegating the proxy request to an exit proxy;

measuring, by the proxy server, utilized traffic of the client device while executing the proxy request; and

reporting, by the proxy server, the utilized traffic of the client device to the messaging platform.

2. The method of claim 1 , further comprising:

obtaining, by the proxy server, a limit reached message from the messaging platform; and

terminating, by the proxy server, execution of the proxy request received from the client device.

3. The method of claim 1 , further comprising:

obtaining, by the proxy server, a limit increased message from the messaging platform; and

continuing, by the proxy server, execution of the proxy request received from the client device.

4. The method of claim 1 , wherein the client authorization data further comprises a client identifier (ID).

5. The method of claim 1 , further comprising:

establishing, by the proxy server, a network communication channel with the client device based on a network communication protocol.

6. The method of claim 1 , wherein the utilized traffic is expressed as a transmission rate comprising a number of bytes per specific time unit.

7. The method of claim 1 , further comprising:

sending, by the proxy server, an error message to the client device when the state of the status indicator is set as disabled.

8. The method of claim 7 , further comprising:

after executing the proxy request against the target URL or delegating the proxy request to the exit proxy, returning, by the proxy server, response data to the client device.

9. The method of claim 1 , further comprising:

transferring the client authorization data to a persistent storage facility, wherein the persistent storage facility is internal to the proxy server or connected externally to the proxy server.

10. A system for authorizing a proxy request and reporting web traffic associated with a client device comprising:

a proxy server at a proxy service provider, wherein the proxy server comprises a memory communicatively coupled to one or more processors and storing instructions, that when executed by the one or more processors, cause the proxy server to perform operations comprising:

obtaining client authorization data from a messaging platform, wherein the client authorization data comprises a status indicator;

storing the client authorization data within a memory of the proxy server;

receiving the proxy request from a client device, wherein the proxy request comprises a target uniform resource locator (URL) and a first set of authentication credentials;

retrieving the client authorization data from the memory, and wherein upon retrieving the client authorization data, verifying the first set of authentication credentials in the proxy request by comparing the first set of authentication credentials to a second set of authentication credentials in the client authorization data;

after verifying the first set of authentication credentials, determining a state of the status indicator;

authorizing the proxy request when the state of the status indicator is set as active;

in response to authorizing the proxy request, executing the proxy request against the target URL or delegating the proxy request to an exit proxy;

measuring utilized traffic of the client device while executing the proxy request; and

reporting the utilized traffic of the client device to the messaging platform.

11. The system of claim 10 , wherein the client authorization data further comprises a client identifier (ID).

12. The system of claim 10 , wherein the operations further comprise:

establishing a network communication channel with the client device based on a network communication protocol.

13. The system of claim 10 , wherein the utilized traffic is expressed as a transmission rate comprising a number of bytes per specific time unit.

14. The system of claim 10 , the operations further comprise:

sending an error message to the client device when the state of the status indicator is set as disabled.

15. The system of claim 14 , wherein the operations further comprise:

returning response data to the client device after executing the proxy request against the target URL or delegating the proxy request to an exit proxy.

16. The system of claim 10 , wherein the operations further comprise:

transferring the client authorization data to a persistent storage facility, wherein the persistent storage facility is internal to the proxy server or connected externally to the proxy server.

17. The system of claim 10 , wherein the operations further comprise:

obtaining a limit reached message from the messaging platform; and

terminating execution of the proxy request received from the client device.

18. The system of claim 10 , wherein the operations further comprise:

obtaining a limit increased message from the messaging platform; and

continuing execution of the proxy request received from the client device.

19. A non-transitory computer-readable device storing instructions thereon that, when executed by at least one computing device, cause the at least one computing device to perform operations comprising:

obtaining client authorization data from a messaging platform, wherein the client authorization data comprises a status indicator;

storing the client authorization data within a memory of a proxy server;

receiving a proxy request from a client device, wherein the proxy request comprises a target uniform resource locator (URL) and a first set of authentication credentials;

retrieving the client authorization data from the memory, and wherein upon retrieving the client authorization data, verifying the first set of authentication credentials in the proxy request by comparing the first set of authentication credentials to a second set of authentication credentials in the client authorization data;

after verifying the first set of authentication credentials, determining a state of the status indicator;

authorizing the proxy request when the state of the status indicator is set as active;

in response to authorizing the proxy request, executing the proxy request against the target URL or delegating the proxy request to an exit proxy;

measuring utilized traffic of the client device during while executing the proxy request; and

reporting the utilized traffic of the client device to the messaging platform.

20. The non-transitory computer-readable device of claim 19 , the operations further comprising:

sending an error message to the client device when the state of the status indicator is set as disabled.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 24, 2023
From: KOZLOVSKI, MIROSLAV; CIUTA, GYTIS; KARASEVIC, VALDEMAR
To: CORETECH LT, UAB
Reel/Frame 064363/0419 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 20, 2023
From: CORETECH LT, UAB
To: OXYLABS, UAB
Reel/Frame 063036/0688 →
Continuity (2)
Continuation 17562553 · Dec 27, 2021
Related Publication 20230208839A1 · Jun 29, 2023