IP Library Granted Patent US 10,992,713
Granted Patent B2
US 10,992,713 · App. 16/026,537 · Granted Apr 27, 2021

Method of and system for authorizing user to execute action in electronic service

Inventor: Andrey Nikolaevich Larionov (Tyumen, RU)
Assignee: YANDEX EUROPE AG
H04L63/20H04L63/102H04L63/105H04L67/10
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 10,992,713
App. No.
16/026,537
Granted
Apr 27, 2021
Kind
B2
Abstract

A method and system for authorizing a subject user to perform an action within an electronic service, receiving, a request to access the electronic service, the request including an indication of the subject user, of an object, and of the action that the subject user is desirous of performing on the object within the electronic service, based on at least one of the indication of the subject user and the object, retrieving, by the server, a set of predetermined rules each predetermined rule having been coded and stored, by the server, as a respective bytecode portion, executing the set of predetermined rules, analyzing an outcome rendered by the execution of each rule of the set of predetermined rules, and responsive to the outcome being indicative of a positive result, authorizing the subject to perform the action on the object.

Claims (45)

1. A method for authorizing a subject user to perform an action within an electronic service, the subject user being associated with at least one client device, the subject user being associated with the electronic service, the electronic service being executed at a server, the at least one client device being connected to the server via a communication network, the method comprising:

receiving, by the server from the at least one client device, a request to access the electronic service, the request including an indication of the subject user, of an object, and of the action that the subject user is desirous of performing on the object within the electronic service;

based on at least one of the indication of the subject user and the object, retrieving, by the server, a set of predetermined rules associated with the at least one of the subject user and the object from a plurality of predetermined rules, each one of the plurality of predetermined rules having been coded and stored, by the server, as a respective bytecode portion, the plurality of predetermined rules having been precompiled into the bytecode portions;

each rule of the set of predetermined rules being indicative of a respective condition associated with the subject to be met to authorize the subject to perform the action on the object, and comprising a respective precompiled bytecode portion indicative of at least one of:

a first rule for verifying the subject,

a second rule for verifying the object, and

a third rule for verifying the action that the subject user is desirous of performing on the object;

executing, by the server, each rule of the set of predetermined rules independently in parallel;

analyzing an outcome rendered by executing of each rule of the set of predetermined rules; and

responsive to any rule of the set of predetermined rules rendering a negative outcome:

aborting, by the server, executing remaining rules of the set of predetermined rules;

refusing, by the server, the request of the subject user to perform the action on the object.

2. The method of claim 1 , wherein the set of predetermined rules is retrieved from a rule mapping database, the rule mapping database mapping each of subject users and each of objects to an associated rule of the predetermined rules.

3. The method of claim 2 , wherein each rule of a subset of the set of predetermined rules corresponds to a respective action to be performed by the subject user on a respective object.

4. The method of claim 3 , wherein the predetermined rules have been further precompiled into a machine code, and wherein the plurality of predetermined rules are stored as the machine code.

5. The method of claim 4 , wherein the predetermined rules are executed independently in parallel by a plurality of processors of the server.

6. The method of claim 5 , wherein the subject user is one of: a user, a group of users and a process.

7. The method of claim 6 , wherein the object is one of: a file, a type of file, a directory, a process, and a program.

8. The method of claim 7 , wherein the action is one of: reading, writing, appending, executing, deleting, creating, and searching.

9. The method of claim 8 , wherein the electronic service is a cloud service.

10. The method of claim 9 , wherein the method is executable at the kernel level of the server.

11. The method of claim 10 , wherein the method is executable in a virtual machine of the server.

12. The method of claim 1 , wherein the analyzing of the outcome rendered by the execution of the set of predetermined rules comprises determining if a given outcome of a given predetermined rule is one of a positive, negative and default negative.

13. The method of claim 12 , wherein the outcome is considered to be indicative of the positive result in response to a totality of given outcomes of the set of predetermined rules not rendering a negative outcome.

14. The method of claim 13 , wherein the outcome is considered to be indicative of the positive result in response to the totality of given outcomes of the set of predetermined rules rendering one of a positive and a default negative outcomes.

15. A system for authorizing a subject user to perform an action within an electronic service, the subject user being associated with at least one client device, the subject user being associated with the electronic service, the at least one client device being connected to the system via a communication network, the system comprising:

at least one processor;

a non-transitory computer-readable medium comprising instructions;

the at least one processor, upon executing the instructions, being configured to:

receive, from the at least one client device, a request to access the electronic service, the request including an indication of the subject user, of an object, and of the action that the subject user is desirous of performing on the object within the electronic service;

based on at least one of the indication of the subject user and the object, retrieve a set of predetermined rules associated with the at least one of the subject user and the object from a plurality of predetermined rules, each one of the plurality of predetermined rules having been coded and stored as a respective bytecode portion, the plurality of predetermined rules having been precompiled into the bytecode portions, wherein:

each rule of the set of predetermined rules being indicative of a respective condition associated with the subject to be met to authorize the subject to perform the action on the object, and comprising a respective precompiled bytecode portion indicative of at least one of:

a first rule for verifying the subject,

a second rule for verifying the object, and

a third rule for verifying the action that the subject user is desirous of performing on the object;

execute each rule of the set of predetermined rules independently in parallel;

analyze an outcome rendered by executing of each rule of the set of predetermined rules; and

responsive to any rule of the set of predetermined rules rendering a negative outcome:

abort executing remaining rules of the set of predetermined rules;

refuse the request of the subject user to perform the action on the object.

16. The system of claim 15 , wherein the set of predetermined rules is retrieved from a rule mapping database, the rule mapping database mapping each of subject users and each of objects to an associated rule of the predetermined rules.

17. The system of claim 16 , wherein each rule of a subset of the set of predetermined rules corresponds to a respective action to be performed by the subject user on a respective object.

18. The system of claim 17 , wherein the predetermined rules have been further precompiled into a machine code, and wherein the plurality of predetermined rules are stored as the machine code.

19. The system of claim 17 , wherein to execute the predetermined rules independently in parallel, the server comprises a plurality of processors.

20. The system of claim 15 , wherein the analyze the outcome rendered by the execution of the set of predetermined rules, the at lesat one processor is configured to determine if a given outcome of a given predetermined rule is one of a positive, negative and default negative.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 9, 2024
From: DIRECT CURSUS TECHNOLOGY L.L.C
To: Y.E. HUB ARMENIA LLC
Reel/Frame 068534/0384 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 15, 2023
From: YANDEX EUROPE AG
To: DIRECT CURSUS TECHNOLOGY L.L.C
Reel/Frame 065692/0720 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 3, 2018
From: LARIONOV, ANDREY NIKOLAEVICH
To: YANDEX LLC
Reel/Frame 046262/0397 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 3, 2018
From: YANDEX LLC
To: YANDEX EUROPE AG
Reel/Frame 046262/0487 →