IP Library Granted Patent US 10,616,180
Granted Patent B2
US 10,616,180 · App. 15/986,874 · Granted Apr 7, 2020

Clientless connection setup for cloud-based virtual private access systems and methods

Inventors: John A. Chanak (Saratoga, CA); Patrick Foxhoven (San Jose, CA); William Fehring (Sunnyvale, CA); Denzil Wessels (Los Gatos, CA); Kunal Shah (San Jose, CA); Subramanian Srinivasan (Milpitas, CA)
Assignee: Zscaler, Inc.
H04L63/0272G06F9/547H04L9/006H04L9/0894H04L9/14H04L9/30H04L9/3263H04L63/029H04L63/0823H04L63/0876H04L67/1021H04L67/42H04L61/1511H04L61/6013
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,616,180
App. No.
15/986,874
Granted
Apr 7, 2020
Kind
B2
Abstract

Virtual private access systems and methods implemented in a clientless manner on a user device are disclosed. The systems and methods include receiving a request to access resources from a Web browser on the user device at an exporter in a cloud system. The resources are located in one of a public cloud and an enterprise network and the user device is remote therefrom on the Internet. The systems and methods also include performing a series of connections between the exporter and i) the Web browser and ii) centralized components to authenticate a user of the user device for the resources. The systems and methods further include, subsequent to authentication, exchanging data between the Web browser and the resources through the exporter. The exporter has a first secure tunnel to the Web browser and a second secure tunnel to the resources.

Claims (34)

1. A virtual private access method implemented in a clientless manner on a user device, the method comprising:

receiving a request to access resources from a Web browser on the user device at an exporter in a cloud system, wherein the resources are located in one of a public cloud and an enterprise network and the user device is remote therefrom on the Internet;

performing a series of connections between the exporter and i) the Web browser and ii) centralized components comprising a crypto service, database, cookie store, and Security Assertion Markup Language (SAML) Service Provider (SP) component to authenticate a user of the user device for the resources including receiving an authentication cookie from the web browser and obtaining an assertion from the cookie store for clientless authentication; and

subsequent to authentication, exchanging data between the Web browser and the resources through the exporter, wherein the exporter has a first secure tunnel to the Web browser and a second secure tunnel to the resources, wherein the exporter redirects the SAML SP, and wherein the SAML SP redirects to an Identity Provider (IDP) of the user device and determines the authentication cookie based on the assertion, the assertion being received from the IDP and provided to the cookie store.

2. The virtual private access method of claim 1 , further comprising:

prior to the request, uploading a private and public key to the centralized components via an Application Programming Interface (API); and

encrypting and storing the private key in the database.

3. The virtual private access method of claim 1 , wherein the request is sent to an address of the resources and changed via a Domain Name System (DNS) server to an address of the exporter.

4. The virtual private access method of claim 3 , wherein the address of the exporter resolves to a nearest cloud node.

5. The virtual private access method of claim 1 , wherein the user device sends the request via Transmission Control Protocol (TCP) port 80 and after the receiving, the exporter redirects the user device to TCP port 443 based on determining an address of the resources relates to virtual private access.

6. The virtual private access method of claim 1 , wherein the exporter utilizes Server Name Indication (SNI) to determine a certificate to present, wherein the certificate is encrypted and obtained from the database and the crypto service decrypts the certificate and authenticates the exporter.

7. The virtual private access method of claim 1 ,

wherein the exporter authenticates to a broker of the cloud system using the assertion obtained from the cookie store.

8. A cloud system adapted to implement virtual private access with a user device in a clientless manner, the cloud system comprising:

one or more cloud nodes communicatively coupled to one another;

wherein each of the one or more cloud nodes comprises one or more processors and memory storing instructions that, when executed, cause the one or more processors to

receive a request to access resources from a Web browser on the user device, wherein the resources are located in one of a public cloud and an enterprise network and the user device is remote therefrom on the Internet;

perform a series of connections between i) the Web browser and ii) centralized components comprising a crypto service, database, cookie store, and Security Assertion Markup Language (SAML) Service Provider (SP) component to authenticate a user of the user device for the resources including receiving an authentication cookie from the web browser and obtaining an assertion from the cookie store for clientless authentication; and

subsequent to authentication, exchange data between the Web browser and the resources through the cloud node, wherein the cloud node has a first secure tunnel to the Web browser and a second secure tunnel to the resources, wherein the exporter redirects the SAML SP, and wherein the SAML SP redirects to an Identity Provider (IDP) of the user device and determines the authentication cookie based on the assertion, the assertion being received from the IDP and provided to the cookie store.

9. The cloud system of claim 8 , wherein, prior to the request, a private and public key tis uploaded o the centralized components via an Application Programming Interface (API) and the private key is encrypted and stored in the database.

10. The cloud system of claim 8 , wherein the request is sent to an address of the resources and changed via a Domain Name System (DNS) server to an address of the cloud node.

11. The cloud system of claim 10 , wherein the address of the cloud node resolves to a nearest cloud node.

12. The cloud system of claim 10 , wherein the user device sends the request via Transmission Control Protocol (TCP) port 80 and after the receiving, the exporter redirects the user device to TCP port 443 based on determining an address of the resources relates to virtual private access.

13. The cloud system of claim 10 , wherein the cloud node utilizes Server Name Indication (SNI) to determine a certificate to present, wherein the certificate is encrypted and obtained from the database and the crypto service decrypts the certificate and authenticates the exporter.

14. The cloud system of claim 10 , wherein the exporter authenticates to a broker of the cloud system using the assertion obtained from the cookie store.

15. A non-transitory computer-readable medium comprising instructions that, when executed, cause a processor to perform the steps of:

receiving a request to access resources from a Web browser on a user device at an exporter in a cloud system, wherein the resources are located in one of a public cloud and an enterprise network and the user device is remote therefrom on the Internet;

performing a series of connections between the exporter and i) the Web browser and ii) centralized components comprising a crypto service, database, cookie store, and Security Assertion Markup Language (SAML) Service Provider (SP) component to authenticate a user of the user device for the resources including receiving an authentication cookie from the web browser and obtaining an assertion from the cookie store for clientless authentication; and

subsequent to authentication, exchanging data between the Web browser and the resources through the exporter, wherein the exporter has a first secure tunnel to the Web browser and a second secure tunnel to the resources, wherein the exporter redirects the SAML SP, and wherein the SAML SP redirects to an Identity Provider (IDP) of the user device and determines the authentication cookie based on the assertion, the assertion being received from the IDP and provided to the cookie store.

16. The non-transitory computer-readable medium of claim 15 , wherein the instructions that, when executed, cause a processor to perform the steps of:

prior to the request, receiving a private and public key to the centralized components via an Application Programming Interface (API); and

encrypting and storing the private key in the database.

17. The non-transitory computer-readable medium of claim 15 , wherein the request is sent to an address of the resources and changed via a Domain Name System (DNS) server to an address of the exporter.

18. The non-transitory computer-readable medium of claim 15 , wherein the exporter authenticates to a broker of the cloud system using the assertion obtained from the cookie store.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 23, 2018
From: CHANAK, JOHN A.; FOXHOVEN, PATRICK; FEHRING, WILLIAM; SHAH, KUNAL; SRINIVASAN, SUBRAMANIAN
To: ZSCALER, INC.
Reel/Frame 045878/0233 →
Continuity (3)
Continuation In Part 15158153 · May 18, 2016
Continuation In Part 14310348 · Jun 20, 2014
Related Publication 20180270201A1 · Sep 20, 2018
Cited By (5)
US 12,355,589 US 12,568,085 US 12,647,392 US 12,676,795 US 12,712,878