IP Library Granted Patent US 11,936,623
Granted Patent B2
US 11,936,623 · App. 17/367,741 · Granted Mar 19, 2024

Systems and methods for utilizing sub-clouds in a cloud-based system for private application access

Inventors: John A. Chanak (Saratoga, CA); Kunal Shah (Los Altos, CA)
Assignee: Zscaler, Inc.
H04L63/0272G06F9/547H04L9/006H04L9/0894H04L9/14H04L9/30H04L9/3263H04L63/029H04L63/0823H04L63/0876H04L67/01H04L67/1021H04L61/4511H04L61/59
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 11,936,623
App. No.
17/367,741
Granted
Mar 19, 2024
Kind
B2
Abstract

Systems and methods include obtaining for a tenant a definition of a sub-cloud in a cloud-based system, wherein the cloud-based system includes a plurality of data centers geographically distributed, and wherein the sub-cloud includes a subset of the plurality of data centers; receiving a request, in a cloud system from a user device, to access an application for the tenant, wherein the application is constrained to the sub-cloud, and wherein the user device is remote over the Internet; determining if the user device is permitted to access the application; if the user device is not permitted to access the application, notifying the user device the application does not exist; and if the user device is permitted to access the application, stitching together connections between the sub-cloud, the application, and the user device to provide access to the application.

Claims (34)

1. A method comprising:

obtaining a tenant specific definition of a sub-cloud in a cloud-based system, wherein the cloud-based system includes a plurality of data centers geographically distributed, and wherein the tenant specified sub-cloud definition includes a combination of including and excluding subsets of data centers, and wherein new data centers are automatically added to the sub-cloud based on the definition;

receiving a request, in a cloud system from a user device, to access an application for the tenant, wherein the application and the user associated with the tenant is constrained to the data centers of the sub-cloud, and wherein the user device is remote over the Internet;

determining if the user device is permitted to access the application;

if the user device is not permitted to access the application, notifying the user device the application does not exist; and

if the user device is permitted to access the application, stitching together connections between the sub-cloud, the application, and the user device to provide access to the application, wherein the user device is adapted to select an application connector for stitching together the connections based on the tenant specified sub-cloud definition.

2. The method of claim 1 , wherein the tenant specified sub-cloud is defined by excluding any data centers based on criteria such that all data centers are included except those exclude by the criteria.

3. The method of claim 1 , wherein the tenant specified sub-cloud is defined by including any data centers based on criteria such that all data centers are included based on the criteria.

4. The method of claim 1 , wherein the application for the tenant is constrained to only data centers in the sub-cloud.

5. The method of claim 1 , wherein the determining includes determining if a user associated with the user device is permitted to access the application.

6. The method of claim 1 , wherein the stitching together the connections includes a connector application executing on the user device creating a connection to the sub-cloud and a connector located in the data centers of the sub-cloud associated with the application creating a connection to the sub-cloud, to enable the user device and the application to communicate.

7. A non-transitory computer-readable storage medium having computer readable code stored thereon for programming a device to perform steps of:

obtaining a tenant specific definition of a sub-cloud in a cloud-based system, wherein the cloud-based system includes a plurality of data centers geographically distributed, and wherein the tenant specified sub-cloud definition includes a combination of including and excluding subsets of data centers, and wherein new data centers are automatically added to the sub-cloud based on the definition;

receiving a request, in a cloud system from a user device, to access an application for the tenant, wherein the application and the user associated with the tenant is constrained to the data centers of the sub-cloud, and wherein the user device is remote over the Internet;

determining if the user device is permitted to access the application;

if the user device is not permitted to access the application, notifying the user device the application does not exist; and

if the user device is permitted to access the application, stitching together connections between the sub-cloud, the application, and the user device to provide access to the application, wherein the user device is adapted to select an application connector for stitching together the connections based on the tenant specified sub-cloud definition.

8. The non-transitory computer-readable storage medium of claim 7 , wherein the tenant specified sub-cloud is defined by excluding any data centers based on criteria such that all data centers are included except those exclude by the criteria.

9. The non-transitory computer-readable storage medium of claim 7 , wherein the tenant specified sub-cloud is defined by including any data centers based on criteria such that all data centers are included based on the criteria.

10. The non-transitory computer-readable storage medium of claim 7 , wherein the application for the tenant is constrained to only data centers in the sub-cloud.

11. The non-transitory computer-readable storage medium of claim 7 , wherein the determining includes determining if a user associated with the user device is permitted to access the application.

12. The non-transitory computer-readable storage medium of claim 7 , wherein the stitching together the connections includes a connector application executing on the user device creating a connection to the sub-cloud and a connector located in the data centers of the sub-cloud associated with the application creating a connection to the sub-cloud, to enable the user device and the application to communicate.

13. A node in a cloud-based system comprising:

one or more processors and memory comprising instructions that, when executed, cause the one or more processors to

obtain a tenant specific definition of a sub-cloud in a cloud-based system, wherein the cloud-based system includes a plurality of data centers geographically distributed, and wherein the tenant specified sub-cloud definition includes a combination of including and excluding subsets of data centers, and wherein new data centers are automatically added to the sub-cloud based on the definition;

receive a request, from a user device, to access an application for the tenant, wherein the application and the user associated with the tenant is constrained to the data centers of the sub-cloud, and wherein the user device is remote over the Internet;

determine if the user device is permitted to access the application;

if the user device is not permitted to access the application, notify the user device the application does not exist; and

if the user device is permitted to access the application, stitch together connections between the node, the application, and the user device to provide access to the application, wherein the user device is adapted to select an application connector for stitching together the connections based on the tenant specified sub-cloud definition.

14. The node of claim 13 , wherein the tenant specified sub- cloud is defined by excluding any data centers based on criteria such that all data centers are included except those exclude by the criteria.

15. The node of claim 13 , wherein the tenant specified sub- cloud is defined by including any data centers based on criteria such that all data centers are included based on the criteria.

16. The node of claim 13 , wherein the application for the tenant is constrained to only data centers in the sub-cloud.

17. The node of claim 13 , wherein the determining includes determining if a user associated with the user device is permitted to access the application.

18. The method of claim 1 , wherein the tenant specified sub-cloud is defined by excluding all data centers in a specified region, and wherein new data centers are automatically available in the tenant specified sub-cloud.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 6, 2021
From: CHANAK, JOHN A.; SHAH, KUNAL
To: ZSCALER, INC.
Reel/Frame 056758/0865 →
Continuity (4)
Continuation In Part 16800307 · Feb 25, 2020
Continuation 15986874 · May 23, 2018
Continuation In Part 15158153 · May 18, 2016
Related Publication 20210336932A1 · Oct 28, 2021