US 12,170,709 B2
Multi-tenancy via code encapsulated in server requests
Tomasz Janczuk, Redmond, WA (US); and Matías Woloski, Punta del Este (UY)
Filed by Auth0, Inc., San Francisco, CA (US)
Filed on Jul. 28, 2023, as Appl. No. 18/361,538.
Application 18/361,538 is a continuation of application No. 17/964,890, filed on Oct. 12, 2022, granted, now 11,736,568.
Application 17/964,890 is a continuation of application No. 17/877,887, filed on Jul. 30, 2022, granted, now 11,582,303, issued on Feb. 14, 2023.
Application 17/877,887 is a continuation of application No. 16/686,023, filed on Nov. 15, 2019, granted, now 11,622,003, issued on Apr. 4, 2023.
Application 16/686,023 is a continuation of application No. 14/951,223, filed on Nov. 24, 2015, granted, now 10,516,733, issued on Dec. 24, 2019.
Claims priority of provisional application 62/084,511, filed on Nov. 25, 2014.
Prior Publication US 2023/0388379 A1, Nov. 30, 2023
Int. Cl. H04L 67/1097 (2022.01); G06F 8/41 (2018.01); G06F 9/54 (2006.01); G06F 16/955 (2019.01); G06F 21/53 (2013.01); G06F 21/60 (2013.01); H04L 67/00 (2022.01); H04L 67/025 (2022.01); H04L 67/133 (2022.01); H04L 67/561 (2022.01)
CPC H04L 67/1097 (2013.01) [G06F 8/433 (2013.01); G06F 9/547 (2013.01); G06F 16/955 (2019.01); G06F 21/53 (2013.01); G06F 21/604 (2013.01); H04L 67/133 (2022.05); H04L 67/34 (2013.01); H04L 67/561 (2022.05); G06F 2209/549 (2013.01); H04L 67/025 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A method comprising:
receiving a request that includes:
a computer routine comprising one of computer code or a uniform resource locator (URL) link to the computer code, and
a secret for accessing protected data or a protected functionality associated with the computer routine, wherein the secret comprises a database connection string, an application program interface (API) key, or a security key associated with the computer routine;
analyzing the computer routine to determine one or more programming languages used in the computer routine;
creating, in response to the request and using one or more language bindings corresponding to the determined one or more programming languages, a container in an isolated environment at a server, wherein the container is associated with a webtask cluster that includes one or more firewall rules that prevent an untrusted computer routine in one webtask container from communicating with other webtask containers and webtask infrastructure associated with the webtask cluster;
assigning computing resources to the container to create an execution environment for the request;
executing the computer routine in the container;
determining, based at least in part on associating a request ID associated with the container with a thread ID associated with thread resources, computing resources consumed during execution of the computer routine;
returning a calculated result based on executing the computer routine; and
destroying the container upon completion of executing the computer routine.