# US 2021/0240595 A1 · Configuration-based code construct for restriction checks in component of a web application

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

- Number: US 2021/0240595 A1
- Document ID: US20210240595A1
- Status: Published application
- Kind: A1
- Application number: 16/776,902
- Filed: 2020-01-30
- Published: 2021-08-05
- Earliest claimed: 2020-01-30
- Assignees: EMC IP Holding Company LLC
- Applicants: EMC IP Holding Company LLC
- Inventors: Raphaël Aubert
- Web page: https://patentgrep.com/patent/US20210240595A1

## CPC

- G06F 11/3616: {using software metrics}
- G06F 11/3636: {by tracing the execution of the program}
- G06F 8/71: Version control (security arrangements therefor G06F21/57); Configuration management
- G06F 9/45529: {Embedded in an application, e.g. JavaScript in a Web browser}
- G06F 9/547: {Remote procedure calls [RPC]; Web services}
- G06F 11/3644: {by instrumenting at runtime}
- G06F 16/986: {Document structures and storage, e.g. HTML extensions}
- G06F 21/53: by executing in a restricted environment, e.g. sandbox or secure virtual machine
- G06F 8/65: Updates (security arrangements therefor G06F21/57)
- G06F 16/2246: {Trees, e.g. B+trees}
- G06F 16/289: {Object oriented databases}
- G06F 16/9014: {hash tables}
- G06F 16/90344: {by using string matching techniques}
- G06F 16/95: Retrieval from the web
- G06F 16/958: Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

An apparatus includes at least one processing device configured to intercept activation of a lifecycle hook of a component of a web application, the lifecycle hook of the component of the web application being associated with a configuration-based code construct specifying one or more restriction checks. The at least one processing device is also configured to perform the one or more restriction checks specified in the configuration-based code construct associated with the lifecycle hook of the component of the web application. The at least one processing device is further configured to modify the component of the web application based at least in part on results of performing the one or more restriction checks specified in the configuration-based code construct associated with the lifecycle hook of the component of the web application, and to activate the lifecycle hook with the modified component of the web application.

## Claims

### Claim 1

An apparatus comprising:
at least one processing device comprising a processor coupled to a memory;
the at least one processing device being configured to perform steps of:
intercepting activation of a lifecycle hook of a component of a web application, the lifecycle hook of the component of the web application being associated with a configuration-based code construct specifying one or more restriction checks;
performing the one or more restriction checks specified in the configuration-based code construct associated with the lifecycle hook of the component of the web application;
modifying the component of the web application based at least in part on results of performing the one or more restriction checks specified in the configuration-based code construct associated with the lifecycle hook of the component of the web application; and
activating the lifecycle hook with the modified component of the web application.

### Claim 2 (depends on 1)

The apparatus of claim 1 wherein the configuration-based code construct associated with the lifecycle hook of the component of the web application comprises an annotation.

### Claim 3 (depends on 2)

The apparatus of claim 2 wherein the component of the web application utilizes at script programming language, and wherein the annotation comprises a decorator.

### Claim 4 (depends on 1)

The apparatus of claim 1 wherein modifying the component of the web application comprises refreshing a document object model (DOM) utilized by a web application framework of the web application.

### Claim 5 (depends on 1)

The apparatus of claim 1 wherein the one or more restriction checks, specified in the configuration-based code construct associated with the lifecycle hook of the component of the web application, are configured to be dynamically updated while the web application is executing to alter real-time presentation of content by the component of the web application to a user executing the web application.

### Claim 6 (depends on 5)

The apparatus of claim 5 wherein the one or more restriction checks are based at least in part on an identity of a user executing the web application, and wherein dynamically updating the one or more restriction checks is responsive to changes in access rights of the user.

### Claim 7 (depends on 5)

The apparatus of claim 5 wherein the one or more restriction checks are based at least in part on one or more restriction identifiers specifying actions to be taken for the real-time alteration of the content presented by the component of the web application to the user executing the web application, and wherein dynamically updating the one or more restriction checks is responsive to changes in the one or more restriction identifiers.

### Claim 8 (depends on 1)

The apparatus of claim 1 wherein the lifecycle hook is defined by a web application framework of the web application, the lifecycle hook comprising one of a set of lifecycle hooks for the web application framework to create, render and remove the component of the web application.

### Claim 9 (depends on 1)

The apparatus of claim 1 wherein the component of the web application comprises a code class, wherein the configuration-based code construct is associated with at least one attribute of the code class, and wherein the configuration-based code construct specifies one or more restriction identifiers for one or more actions to be taken on the at least one attribute of the code class responsive to the one or more restriction checks.

### Claim 10 (depends on 9)

The apparatus of claim 9 wherein a given action for a given one of the one or more restriction identifiers comprises at least one of clearing and removing a given attribute value in response to the one or more restriction checks denying a user executing the web application access to the component of the web application.

### Claim 11 (depends on 9)

The apparatus of claim 9 wherein a given action for a given one of the one or more restriction identifiers comprises replacing a given attribute value with another attribute value, the other attribute value being selected from a set of one or more potential replacement attribute values based at least in part on available access rights for a user executing the web application.

### Claim 12 (depends on 1)

The apparatus of claim 1 wherein the component of the web application comprises a code class, wherein the configuration-based code construct is associated with at least one function of the code class, and wherein the configuration-based code construct specifies one or more restriction identifiers for one or more actions to be taken on the at least one function of the code class responsive to the one or more restriction checks.

### Claim 13 (depends on 12)

The apparatus of claim 12 wherein a given action for a given one of the one or more restriction identifiers comprises preventing a given function from running in response to the one or more restriction checks denying a user executing the web application access to the component of the web application.

### Claim 14 (depends on 12)

The apparatus of claim 12 wherein a given action for a given one of the one or more restriction identifiers comprises replacing a given result of a given function with another result, the other result being selected from a set of one or more potential replacement results based at least in part on available access rights for a user executing the web application.

### Claim 15

A computer program product comprising a non-transitory processor-readable storage medium having stored therein program code of one or more software programs, wherein the program code when executed by at least one processing device causes the at least one processing device to perform steps of:
intercepting activation of a lifecycle hook of a component of a web application, the lifecycle hook of the component of the web application being associated with a configuration-based code construct specifying one or more restriction checks;
performing the one or more restriction checks specified in the configuration-based code construct associated with the lifecycle hook of the component of the web application;
modifying the component of the web application based at least in part on results of performing the one or more restriction checks specified in the configuration-based code construct associated with the lifecycle hook of the component of the web application; and
activating the lifecycle hook with the modified component of the web application.

### Claim 16 (depends on 15)

The computer program product of claim 15 wherein the one or more restriction checks, specified in the configuration-based code construct associated with the lifecycle hook of the component of the web application, are configured to be dynamically updated while the web application is executing to alter real-time presentation of content by the component of the web application to a user executing the web application.

### Claim 17 (depends on 15)

The computer program product of claim 15 wherein the component of the web application comprises a code class, wherein the configuration-based code construct is associated with at least one attribute or function of the code class, and wherein the configuration-based code construct specifies one or more restriction identifiers for one or more actions to be taken on the at least one attribute or function of the code class responsive to the one or more restriction checks.

### Claim 18

A method comprising steps of:
intercepting activation of a lifecycle hook of a component of a web application, the lifecycle hook of the component of the web application being associated with a configuration-based code construct specifying one or more restriction checks;
performing the one or more restriction checks specified in the configuration-based code construct associated with the lifecycle hook of the component of the web application;
modifying the component of the web application based at least in part on results of performing the one or more restriction checks specified in the configuration-based code construct associated with the lifecycle hook of the component of the web application; and
activating the lifecycle hook with the modified component of the web application;
wherein the method is performed by at least one processing device comprising a processor coupled to a memory.

### Claim 19 (depends on 18)

The method of claim 18 wherein the one or more restriction checks, specified in the configuration-based code construct associated with the lifecycle hook of the component of the web application, are configured to be dynamically updated while the web application is executing to alter real-time presentation of content by the component of the web application to a user executing the web application.

### Claim 20 (depends on 18)

The method of claim 18 wherein the component of the web application comprises a code class, wherein the configuration-based code construct is associated with at least one attribute or function of the code class, and wherein the configuration-based code construct specifies one or more restriction identifiers for one or more actions to be taken on the at least one attribute or function of the code class responsive to the one or more restriction checks.
