IP Library Granted Patent US 10,757,090
Granted Patent B2
US 10,757,090 · App. 14/954,989 · Granted Aug 25, 2020

Secure application access system

Inventors: Anurag Kahol (Los Gatos, CA); Anoop Kumar Bhattacharjya (Campbell, CA); Balas Natarajan Kausik (Los Gatos, CA)
Assignee: Bitglass, Inc.
H04L63/0815H04L63/0281H04L63/0884H04L63/10H04L63/105H04L63/20H04L67/1002H04L67/28
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,757,090
App. No.
14/954,989
Granted
Aug 25, 2020
Kind
B2
Abstract

A proxy server receives a synchronization request from an application program resident on a user device. The proxy server determines that the user device requires removal of application program data and synchronizes the application program resident on the user device with a null account that is associated with application program.

Claims (66)

1. A method for improving secure access to application programs, comprising:

receiving, by a proxy server, a single-sign-on request from a device for access to an application program, the device directed by an application server to a cloud network location of the proxy server, the proxy server configured to authenticate computer security validation requests for the application program;

directing, by the proxy server, the device to an identity provider by sending the device a network location of the identity provider, the identity provider configured to authenticate computer security validation requests for the proxy server, the device communicates directly with the identity provider using the network location of the identity provider, the identity provider redirects the device to the cloud network location of the proxy server with a single-sign-on validation after validation of the single-sign-on request;

receiving, at the proxy server, the single-sign-on validation from the device;

creating, by the proxy server, a valid identification assertion;

directing, by the proxy server, the device to the application server by sending the device a network location of the application server and the valid identification assertion, the device communicates directly with the application server using the network location of the application server and the valid identification assertion, the device thereafter communicates directly with the application server for subsequent accesses to the application program.

2. The method as recited in claim 1 , wherein the device is a user device.

3. The method as recited in claim 1 , wherein the device is a user device, and wherein the user device sends a request for access to the application program to an application provider and receives a network location of the proxy server from the application provider.

4. The method as recited in claim 1 , wherein the device is a user device, wherein the user device sends a request for access to the application program to an application provider and receives a network location of the proxy server from the application provider, and wherein the user device sends the single-sign-on request to the proxy server using the network location of the proxy server.

5. The method as recited in claim 1 , wherein the proxy server and the identity provider exchange data using a Security Assertion Markup Language data format.

6. The method as recited in claim 1 , further comprising:

wherein the application server is an application proxy server;

monitoring, by the proxy server, operating status of the application proxy server;

in response to the monitoring of the operating status of the application server detecting that the application server is no longer available, directing the device to an application provider by sending the device a network location of the application provider to the device.

7. The method as recited in claim 1 , further comprising:

wherein the application server is an application proxy server;

receiving, by the application proxy server, from the device the valid identification assertion with an associated Uniform Resource Locator for the application program

rewriting, by the application proxy server, the valid identification assertion with the Uniform Resource Locator to be directed to the application proxy server;

sending, by the application proxy server, the rewritten valid identification assertion to the device, wherein the application program is accessed by the device through the application proxy server.

8. The method as recited in claim 1 , further comprising:

logging, by the proxy server, network requests from user devices to applications;

creating a report relating to resource accesses based on the logged network requests.

9. A non-transitory computer readable medium, storing software instructions, which when executed by one or more processors cause performance of:

receiving, by a proxy server, a single-sign-on request from a device for access to an application program, the device directed by an application server to a cloud network location of the proxy server, the proxy server configured to authenticate computer security validation requests for the application program;

directing, by the proxy server, the device an identity provider by sending the device a network location of the identity provider, the identity provider configured to authenticate computer security validation requests for the proxy server, the device communicates directly with the identity provider using the network location of the identity provider, the identity provider redirects the device to the cloud network location of the proxy server with a single-sign-on validation after validation of the single-sign-on request;

receiving, at the proxy server, the single-sign-on validation from the device;

creating, by the proxy server, a valid identification assertion;

directing, by the proxy server, the device to the application server by sending the device a network location of the application server and the valid identification assertion, the device communicates directly with the application server using the network location of the application server and the valid identification assertion, the device thereafter communicates directly with the application server for subsequent accesses to the application program.

10. The non-transitory computer readable medium as recited in claim 9 , wherein the device is a user device.

11. The non-transitory computer readable medium as recited in claim 9 , wherein the device is a user device, and wherein the user device sends a request for access to the application program to an application provider and receives a network location of the proxy server from the application provider.

12. The non-transitory computer readable medium as recited in claim 9 , wherein the device is a user device, wherein the user device sends a request for access to the application program to an application provider and receives a network location of the proxy server from the application provider, and wherein the user device sends the single-sign-on request to the proxy server using the network location of the proxy server.

13. The non-transitory computer readable medium as recited in claim 9 , wherein the proxy server and the identity provider exchange data using a Security Assertion Markup Language data format.

14. The non-transitory computer readable medium as recited in claim 9 , wherein the software instructions when executed by the one or more processors further cause performance of:

wherein the application server is an application proxy server;

monitoring, by the proxy server, operating status of the application proxy server;

in response to the monitoring of the operating status of the application server detecting that the application server is no longer available, directing the device to an application provider by sending the device a network location of the application provider to the device.

15. The non-transitory computer readable medium as recited in claim 9 , wherein the software instructions when executed by the one or more processors further cause performance of:

wherein the application server is an application proxy server;

receiving, by the application proxy server, from the device the valid identification assertion with an associated Uniform Resource Locator for the application program

rewriting, by the application proxy server, the valid identification assertion with the Uniform Resource Locator to be directed to the application proxy server;

sending, by the application proxy server, the rewritten valid identification assertion to the device, wherein the application program is accessed by the device through the application proxy server.

16. The non-transitory computer readable medium as recited in claim 9 , wherein the software instructions when executed by the one or more processors further cause performance of:

logging, by the proxy server, network requests from user devices to applications;

creating a report relating to resource accesses based on the logged network requests.

17. A system that improves secure access to application programs, comprising:

a proxy server, the proxy server configured to authenticate computer security validation requests for application programs;

an application proxy server, the application proxy server directs all accesses to application programs from an application service provider to itself;

a device request receiver, implemented at least partially in hardware at the proxy server, that receives from a device a single-sign-on request for access to an application program, the device directed by the application proxy server to a cloud network location of the proxy server;

a device redirector, implemented at least partially in hardware at the proxy server, that directs the device to an identity provider by sending the device a network location of the identity provider, the identity provider configured to authenticate computer security validation requests for the proxy server, the device communicates directly with the identity provider using the network location of the identity provider, the identity provider redirects the device to the cloud network location of the proxy server with a single-sign-on validation after validation of the single-sign-on request;

wherein the device request receiver receives the single-sign-on validation from the device;

an assertion generator, implemented at least partially in hardware at the proxy server, that creates a valid identification assertion;

wherein the device redirector directs the device to the application proxy server by sending the device a network location of the application proxy server and the valid identification assertion, the device communicates directly with the application server using the network location of the application server and the valid identification assertion, the device thereafter communicates directly with the application proxy server for subsequent accesses to the application program.

18. The system as recited in claim 17 , wherein the device is a user device.

19. The system as recited in claim 17 , wherein the device is a user device, and wherein the user device sends a request for access to the application program to an application service provider and receives a network location of the proxy server from the application service provider.

20. The system as recited in claim 17 , wherein the device is a user device, wherein the user device sends a request for access to the application program to an application service provider and receives a network location of the proxy server from the application service provider, and wherein the user device sends the single-sign-on request to the proxy server using the network location of the proxy server.

21. The system as recited in claim 17 , wherein the proxy server and the identity provider exchange data using a Security Assertion Markup Language data format.

22. The system as recited in claim 17 , further comprising:

an application proxy server monitor, implemented at least partially in hardware at the proxy server, that monitors operating status of the application proxy server;

wherein the application proxy server monitor, in response to detecting that the application server is no longer available, directs the device to the application service provider by sending the device a network location of the application service provider to the device.

23. The system as recited in claim 17 , further comprising:

an identification assertion receiver, implemented at least partially in hardware at the application proxy server, that receives from the device the valid identification assertion with an associated Uniform Resource Locator for the application program;

a Uniform Resource Locator redirector, implemented at least partially in hardware at the application proxy server, that rewrites the valid identification assertion with the Uniform Resource Locator to be directed to the application proxy server;

a Uniform Resource Locator transmitter, implemented at least partially in hardware at the application proxy server, that sends the rewritten valid identification assertion to the device, wherein the application program is accessed by the device through the application proxy server.

24. The system as recited in claim 17 , further comprising:

an access logger, implemented at least partially in hardware at the proxy server, that logs network requests from user devices to applications;

a report generator, implemented at least partially in hardware at the proxy server, that creates a report relating to resource accesses based on the logged network requests.

Assignments (7)
RELEASE OF SECURITY INTEREST Recorded Apr 2, 2025
From: UBS AG, STAMFORD BRANCH
To: FORCEPOINT, LLC; BITGLASS, LLC
Reel/Frame 070706/0263 →
SECURITY INTEREST Recorded Apr 1, 2025
From: FORCEPOINT LLC; BITGLASS, LLC
To: SOCIÉTÉ GÉNÉRALE
Reel/Frame 070703/0887 →
PATENT SECURITY AGREEMENT Recorded Dec 14, 2021
From: BITGLASS, LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 058514/0547 →
CONVERSION FROM A CORPORATION TO A LIMITED LIABILITY COMPANY Recorded Nov 30, 2021
From: BITGLASS, INC.
To: BITGLASS, LLC
Reel/Frame 058919/0164 →
CERTIFICATE OF FORMATION Recorded Nov 22, 2021
From: DEVINE, KIM
To: BITGLASS, LLC
Reel/Frame 058220/0740 →
MERGER Recorded Nov 18, 2021
From: DAYTONA BOBCAT, INC.
To: BITGLASS, INC.
Reel/Frame 058150/0247 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 19, 2020
From: KAHOL, ANURAG; BHATTACHARJYA, ANOOP KUMAR; KAUSIK, BALAS NATARAJAN
To: BITGLASS, INC.
Reel/Frame 053537/0860 →
Cited By (17)
US 12,206,698 US 12,235,962 US 12,244,626 US 12,259,967 US 12,261,884 US 12,299,117 US 12,341,814 US 12,363,151 US 12,418,565 US 12,423,078 US 12,432,253 US 12,450,351 US 12,452,273 US 12,468,810 US 12,537,871 US 12,579,268 US 12,664,258