IP Library Granted Patent US 10,277,566
Granted Patent B2
US 10,277,566 · App. 15/623,135 · Granted Apr 30, 2019

System and method for securing authentication information in a networked environment

Inventors: Craig Robert William Forster (Austin, TX); Daniel Thomas Greff (Austin, TX); Crandall B. T. Chow (Austin, TX); Phillip Goldenburg (Austin, TX)
Assignee: SailPoint Technologies, Inc.
H04L63/061G06F21/31H04L9/30H04L63/029H04L63/0428H04L63/08G06F2221/2115H04L63/0272
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,277,566
App. No.
15/623,135
Granted
Apr 30, 2019
Kind
B2
Abstract

This disclosure is directed to systems and methods for securely communicating authentication information in a networked environment such as one involving a client device, a cloud based computing platform, and an enterprise computing environment. Some embodiments may include encrypting, by a client device using a public key, authentication information provided by a user. The encrypted authentication information is sent to a cloud based service which then sends it to an on-premises component residing behind a firewall of an enterprise. The on-premises component decrypts the authentication information using a private key, validates the authentication information, and returns the result to the cloud based service over a network. If validated, the cloud based service establishes a secure connection between the client device and the on-premises component such that the user can access the enterprise's content without the enterprise having to share the authentication information with the cloud based service.

Claims (31)

1. A system, comprising:

a remote service comprising instructions on a non-transitory computer for executing on a processor of a computing device coupled to a network, the instructions for:

in response to an access over the network to the remote service operated by a first party from a client device operated by a second party, providing an authentication module and a public key from the remote service to the client device operated by the second party over the network, the authentication module for encrypting original authentication information provided by the first party at the client device with the public key to generate encrypted authentication information;

receiving the encrypted authentication information from the client device operated by the second party at the remote service operated by the first party over the network;

providing, over the network, the encrypted authentication information to an on-premises component behind a firewall of an enterprise operated by a third party distinct from the first party, wherein the enterprise is one of a plurality of enterprises and the public key is one a plurality of public keys, each enterprise of the plurality of enterprises having an associated public key of the plurality of public keys stored at the remote service; and

receiving a result of a validation from the on-premises component of the enterprise operated by the third party at the remote service operated by the first party over the network, wherein the on-premises component determines the result of the validation by decrypting the provided encrypted authentication information using a private key corresponding to the public key provided by the remote service operated by the second party to obtain the original authentication information, performing the validation on the original authentication information, and returning the result of the validation to the remote service over a network.

2. The system of claim 1 , wherein the encrypted authentication information is provided to the on-premises component behind the firewall of the enterprise operated by the third party in response to a communication from the on-premises component.

3. The system of claim 1 , wherein the access includes a request comprising an identification of the enterprise, and the remote service determines the public key based on an association between the public key and the identification of the enterprise.

4. The system of claim 3 , wherein the public key for the enterprise is established at the remote service by the enterprise through the on-premises component.

5. The system of claim 1 , wherein the result is signed by the on-premises component using the private key such that the remote service operated by the second party can verify the result was sent by the on-premises component behind a firewall of the enterprise operated by the third party.

6. The system of claim 1 , wherein the on-premises component utilizes the original authentication information or the encrypted authentication information to access a service external to the enterprise.

7. A non-transitory computer readable media storing instructions executable on a processor for:

in response to an access over a network to a remote service operated by a first party from a client device operated by a second party, providing an authentication module and a public key from the remote service to the client device operated by the second party over the network, the authentication module for encrypting original authentication information provided by the first party at the client device with the public key to generate encrypted authentication information;

receiving the encrypted authentication information from the client device operated by the second party at the remote service operated by the first party over the network;

providing, over the network, the encrypted authentication information to an on-premises component behind a firewall of an enterprise operated by a third party distinct from the first party, wherein the enterprise is one of a plurality of enterprises and the public key is one a plurality of public keys, each enterprise of the plurality of enterprises having an associated public key of the plurality of public keys stored at the remote service; and

receiving a result of a validation from the on-premises component of the enterprise operated by the third party at the remote service operated by the first party over the network, wherein the on-premises component determines the result of the validation by decrypting the provided encrypted authentication information using a private key corresponding to the public key provided by the remote service operated by the second party to obtain the original authentication information, performing the validation on the original authentication information, and returning the result of the validation to the remote service over a network.

8. The non-transitory computer readable media of claim 7 , wherein the encrypted authentication information is provided to the on-premises component behind the firewall of the enterprise operated by the third party in response to a communication from the on-premises component.

9. The non-transitory computer readable media of claim 7 , wherein the access includes a request comprising an identification of the enterprise, and the remote service determines the public key based on an association between the public key and the identification of the enterprise.

10. The non-transitory computer readable media of claim 9 , wherein the public key for the enterprise is established at the remote service by the enterprise through the on-premises component.

11. The non-transitory computer readable media of claim 7 , wherein the result is signed by the on-premises component using the private key such that the remote service operated by the second party can verify the result was sent by the on-premises component behind a firewall of the enterprise operated by the third party.

12. The non-transitory computer readable media of claim 7 , wherein the on-premises component utilizes the original authentication information or the encrypted authentication information to access a service external to the enterprise.

13. A method, comprising:

in response to an access over a network to a remote service operated by a first party from a client device operated by a second party, providing an authentication module and a public key from the remote service to the client device operated by the second party over the network, the authentication module for encrypting original authentication information provided by the first party at the client device with the public key to generate encrypted authentication information;

receiving the encrypted authentication information from the client device operated by the second party at the remote service operated by the first party over the network;

providing, over the network, the encrypted authentication information to an on-premises component behind a firewall of an enterprise operated by a third party distinct from the first party, wherein the enterprise is one of a plurality of enterprises and the public key is one a plurality of public keys, each enterprise of the plurality of enterprises having an associated public key of the plurality of public keys stored at the remote service;

receiving a result of a validation from the on-premises component of the enterprise operated by the third party at the remote service operated by the first party over the network, wherein the on-premises component determines the result of the validation by decrypting the provided encrypted authentication information using a private key corresponding to the public key provided by the remote service operated by the second party to obtain the original authentication information, performing the validation on the original authentication information, and returning the result of the validation to the remote service over a network.

14. The method of claim 13 , wherein the encrypted authentication information is provided to the on-premises component behind the firewall of the enterprise operated by the third party in response to a communication from the on-premises component.

15. The method of claim 13 , wherein the access includes a request comprising an identification of the enterprise, and the remote service determines the public key based on an association between the public key and the identification of the enterprise.

16. The method of claim 15 , wherein the public key for the enterprise is established at the remote service by the enterprise through the on-premises component.

17. The method of claim 13 , wherein the result is signed by the on-premises component using the private key such that the remote service operated by the second party can verify the result was sent by the on-premises component behind a firewall of the enterprise operated by the third party.

18. The method of claim 13 , wherein the on-premises component utilizes the original authentication information or the encrypted authentication information to access a service external to the enterprise.

Assignments (6)
RELEASE OF SECURITY INTEREST Recorded Jun 27, 2025
From: GOLUB CAPITAL MARKETS LLC
To: SAILPOINT TECHNOLOGIES, INC.; SAILPOINT TECHNOLOGIES HOLDINGS, INC.
Reel/Frame 071776/0411 →
PATENT SECURITY AGREEMENT Recorded Jun 25, 2025
From: SAILPOINT TECHNOLOGIES, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 071724/0511 →
SECURITY INTEREST Recorded Aug 17, 2022
From: SAILPOINT TECHNOLOGIES, INC.
To: GOLUB CAPITAL MARKETS LLC, AS COLLATERAL AGENT
Reel/Frame 061202/0540 →
RELEASE OF SECURITY INTEREST RECORDED AT REEL/FRAME 048581/0689 Recorded Aug 16, 2022
From: CITIBANK, N.A.
To: SAILPOINT TECHNOLOGIES, INC.
Reel/Frame 061200/0795 →
GRANT OF SECURITY INTEREST IN PATENTS Recorded Mar 13, 2019
From: SAILPOINT TECHNOLOGIES, INC.; SAILPOINT TECHNOLOGIES HOLDINGS, INC.
To: CITIBANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 048581/0689 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 10, 2017
From: FORSTER, CRAIG ROBERT WILLIAM; GREFF, DANIEL THOMAS; CHOW, CRANDALL B.T.; GOLDENBURG, PHILLIP
To: SAILPOINT TECHNOLOGIES, INC.
Reel/Frame 042954/0132 →
Continuity (4)
Continuation 15070805 · Mar 15, 2016
Continuation 14318133 · Jun 27, 2014
Provisional Application 61842831 · Jul 3, 2013
Related Publication 20170289116A1 · Oct 5, 2017