# US 2021/0334243 A1 · Multitenant application server using a union file system

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

- Number: US 2021/0334243 A1
- Document ID: US20210334243A1
- Status: Published application
- Kind: A1
- Application number: 17/369,059
- Filed: 2021-07-07
- Published: 2021-10-28
- Earliest claimed: 2019-04-05
- Assignees: Sap SE
- Applicants: Sap SE
- Inventors: Joachim Fitzer; Pietro Francesco Menna; Felipe Musse; Simon Seif
- Web page: https://patentgrep.com/patent/US20210334243A1

## CPC

- G06F 16/182: Distributed file systems
- G06F 16/185: Hierarchical storage management [HSM] systems, e.g. file migration or policies thereof (details of archiving G06F16/11)
- G06F 16/183: {Provision of network file services by network file servers, e.g. by using NFS, CIFS (network file access protocols H04L67/1097)}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Example methods and systems are directed to a multitenant application server using a union file system. Each tenant has one or more users and a tenant layer in the union file system. Each user has a user layer in the union file system. The union file system provides a logical file system to each user based on the user layer, the tenant layer, and a base layer comprising a set of application layers. A first user shares an application template file with other users of the same tenant by moving the file from the first user's user layer to the tenant layer. After the file is moved, all users of the tenant have access to the application defined by the application template file. The moving of the file is achieved by modifying metadata for the file.

## Claims

### Claim 1

A method comprising:
receiving, at a multitenant application server and via a network, a first request from a first user device associated with a first user identifier of a tenant to stop sharing an application defined using a file stored in a first layer of a union file system of a storage device, the first layer corresponding to the tenant;
in response to the first request, moving, by one or more hardware processors, the file from the first layer to a second layer of the union file system of the storage device, the second layer corresponding to the first user identifier; and
based on the file being on the second layer of the union file system, denying access to the application to a second user device associated with a second user identifier of the tenant.

### Claim 2 (depends on 1)

The method of claim 1, wherein the first user identifier has read-write access to the second layer and read-only access to a third layer of the union file system.

### Claim 3 (depends on 2)

The method of claim 2, wherein the third layer is below the first layer and the first layer is below the second layer.

### Claim 4 (depends on 1)

The method of claim 1, wherein the first layer is available to the second user identifier.

### Claim 5 (depends on 4)

The method of claim 4, wherein based on a third user identifier being of a second tenant, the first layer is unavailable to the third user identifier.

### Claim 6 (depends on 1)

The method of claim 1, further comprising:
determining a set of applications available to the second user identifier by accessing a corresponding set of application template files in a directory on the first layer of the union file system; and
wherein the moving of the file from the first layer to the second layer comprises moving the file from the directory on the second layer.

### Claim 7 (depends on 1)

The method of claim 1, wherein the first layer is composed of a plurality of underlying layers.

### Claim 8

A multitenant system comprising:
a memory that stores instructions; and
one or more processors configured by the instructions to perform operations comprising:
receiving, via a network, a first request from a first user device associated with a first user identifier of a tenant to stop sharing an application defined using a file stored in a first layer of a union file system of a storage device, the first layer corresponding to the tenant;
in response to the first request, moving the file from the first layer to a second layer of the union file system of the storage device, the second layer corresponding to the first user identifier; and
based on the file being on the second layer of the union file system, denying access to the application to a second user device associated with a second user identifier of the tenant.

### Claim 9 (depends on 8)

The multitenant system of claim 8, wherein the first user identifier has read-write access to the second layer and read-only access to a third layer of the union file system.

### Claim 10 (depends on 9)

The multitenant system of claim 9, wherein the third layer is below the first layer and the first layer is below the second layer.

### Claim 11 (depends on 8)

The multitenant system of claim 8, wherein the first layer is available to the second user identifier.

### Claim 12 (depends on 11)

The multitenant system of claim 11, wherein based on a third user identifier being of a second tenant, the first layer is unavailable to the third user identifier.

### Claim 13 (depends on 8)

The multitenant system of claim 8, wherein the operations further comprise:
determining a set of applications available to the second user identifier by accessing a corresponding set of application template files in a directory on the first layer of the union file system; and
wherein the moving of the file from the first layer to the second layer comprises moving the file from the directory on the second layer.

### Claim 14 (depends on 8)

The multitenant system of claim 8, wherein the first layer is composed of a plurality of underlying layers.

### Claim 15

A non-transitory computer-readable medium that stores instructions that, when executed by one or more processors of a multitenant application server, cause the multitenant application server to perform operations comprising:
receiving, via a network, a first request from a first user device associated with a first user identifier of a tenant to stop sharing an application defined using a file stored in a first layer of a union file system of a storage device, the first layer corresponding to the tenant;
in response to the first request, moving the file from the first layer to a second layer of the union file system of the storage device, the second layer corresponding to the first user identifier; and
based on the file being on the second layer of the union file system, denying access to the application to a second user device associated with a second user identifier of the tenant.

### Claim 16 (depends on 15)

The non-transitory computer-readable medium of claim 15, wherein the first user identifier has read-write access to the second layer and read-only access to a third layer of the union file system.

### Claim 17 (depends on 16)

The non-transitory computer-readable medium of claim 16, wherein the third layer is below the first layer and the first layer is below the second layer.

### Claim 18 (depends on 15)

The non-transitory computer-readable medium of claim 15, wherein the first layer is available to the second user identifier.

### Claim 19 (depends on 18)

The non-transitory computer-readable medium of claim 18, wherein based on a third user identifier being of a second tenant, the first layer is unavailable to the third user identifier.

### Claim 20 (depends on 15)

The non-transitory computer-readable medium of claim 15, wherein the operations further comprise:
determining a set of applications available to the second user identifier by accessing a corresponding set of application template files in a directory on the first layer of the union file system; and
wherein the moving of the file from the first layer to the second layer comprises moving the file from the directory on the second layer.
