IP Library Granted Patent US 11,089,005
Granted Patent B2
US 11,089,005 · App. 16/504,791 · Granted Aug 10, 2021

Systems and methods for simulated single sign-on

Inventors: Stuart D. Ford (Slapton, GB); Sanjay Bhanu (Camberley, GB); Martin Sunder Singh Devasirvatham Samuel (Southampton, GB)
Assignee: Bank of America Corporation
H04L63/0815H04L63/0428H04L63/083H04L63/104H04L67/306
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,089,005
App. No.
16/504,791
Granted
Aug 10, 2021
Kind
B2
Abstract

A system provides access to a third-party application by a user without revealing at least one sign-on credential used to access the application to the user. The system includes an access management server and a permission server. The access management server hosts a user portal. In response to a user input from the user portal requesting to access the application, the access management server requests, from the permission server, confirmation of user's permission to access the application. The permission server determines whether access is confirmed using stored permission data, which includes applications the user is currently permitted to access. If the permission server confirms the user's permission, the access management server redirects the user to a sign-on page of the application, automatically enter the sign-on credentials in an anonymized format that is not readable by the user, and automatically submits the sign-on credentials.

Claims (90)

1. A system for providing access to a third-party application by a user without revealing at least one credential used to access the application to the user, the system comprising:

an access management server configured to:

host a session of a user portal for receiving user input;

store security policy data for the user, wherein the security policy data comprises, for the user, a list of third-party applications to which the user may request access and corresponding sign-on credentials for the third-party applications;

receive a query provided by the user in the user portal, the query comprising a first request for display of the list of third-party applications to which the user may request access;

in response to the query, display, in the user portal, the list of third-party applications to which the user may request access, wherein the displayed list is based on the security policy data;

receive, in response to a user selection of a first third-party application from the list displayed in the user portal, a second request for the sign-on credentials for accessing the first third-party application;

in response to the second request for the sign-on credentials, transmit, to a permission server, a third request for confirmation of permission to currently access the first third-party application by the user; and

the permission server configured to:

store permission data for the user, the permission data comprising a list of third-party applications to which the user is currently permitted access;

receive the third request from the access management server;

determine a current permission status for accessing the first third-party application by the user, based on the updated permission data; and

generate a response for the third request, the response comprising confirmation or denial of permission to access the first third-party application by the user based on the current permission status;

wherein the access management server is further configured to:

receive the response from the permission server; and

if the response comprises a confirmation of permission to access the first third-party application by the user:

transmit the sign-on credentials to the first third-party application;

redirect the user from the user portal to a sign-on page of the first third-party application;

automatically enter the sign-on credentials in the sign-on page, wherein the credentials are automatically entered in an anonymized format that is not readable by the user; and

automatically submit the entered sign-on credentials in the sign-on page, thereby providing access to the first third-party application to the user.

2. The system of claim 1 , wherein the query comprises a user identifier for the user; and wherein the displayed list of third-party applications to which the user may request access is determined by identifying one or more third-party applications associated with the user identifier in the security policy data.

3. The system of claim 1 , wherein the third request for confirmation of permission to currently access the first third-party application by the user comprises a user identifier for the user and an application identifier for the first third-party application to which the user is requesting access; and

wherein the permission server determines the current permission status for the user by:

accessing the permission data;

identifying a status in the permission data indicating that access is denied or granted to the user based on the user identifier and the application identifier; and

if the status indicates access is granted, the current permission status is a confirmation that access is permitted for the user.

4. The system of claim 1 , wherein the current permission status for the user comprises the most recently available permission information for the user.

5. The system of claim 1 , wherein the access management server is further configured to provide access to the first third-party application via a browser extension executed on a device of the user.

6. The system of claim 1 , wherein at least one of the credentials is a password for accessing the first third-party application.

7. The system of claim 1 , wherein the access management server is further configured to:

receive the permission data from the permission server; and

update the security policy data, based on the received permission data, such that the updated security policy data comprises a list of third-party applications to which the user is currently permitted access and corresponding sign-on credentials for the third-party applications.

8. A method for providing access to a secure third-party application by a user without revealing at least one credential used to access the application to the user, the method comprising:

hosting a session of a user portal for receiving user input;

storing security policy data for the user, wherein the security policy data comprises, for the user, a list of third-party applications to which the user may request access and corresponding sign-on credentials for the third-party applications;

receiving a query provided by the user in the user portal, the query comprising a first request for display of the list of third-party applications to which the user may request access;

in response to the query, displaying, in the user portal, the list of third-party applications to which the user may request access, wherein the displayed list is based on the security policy data;

receiving, in response to a user selection of a first third-party application from the list displayed in the user portal, a second request for the sign-on credentials for accessing the first third-party application;

in response to the second request for the sign-on credentials, transmitting, to a permission server, a third request for confirmation of permission to currently access the first third-party application by the user, wherein the permission server is configured to:

store permission data for the user, the permission data comprising a list of third-party applications to which the user is currently permitted access;

receive the third request from the access management server;

determine a current permission status for accessing the first third-party application by the user, based on the updated permission data; and

generate a response for the third request, the response comprising confirmation or denial of permission to access the first third-party application by the user based on the current permission status;

receiving the response from the permission server; and

if the response comprises a confirmation of permission to access the first third-party application by the user:

transmitting the sign-on credentials to the first third-party application;

redirecting the user from the user portal to a sign-on page of the first third-party application;

automatically entering the sign-on credentials in the sign-on page, wherein the credentials are automatically entered in an anonymized format that is not readable by the user; and

automatically submitting the entered sign-on credentials in the sign-on page, thereby providing access to the first third-party application to the user.

9. The method of claim 8 , wherein the query comprises a user identifier for the user; and wherein the displayed list of third-party applications to which the user may request access is determined by identifying one or more third-party applications associated with the user identifier in the security policy data.

10. The method of claim 8 , wherein the third request for confirmation of permission to currently access the first third-party application by the user comprises a user identifier for the user and an application identifier for the first third-party application to which the user is requesting access; and

wherein the permission server determines the current permission status for the user by:

accessing the permission data;

identifying a status in the permission data indicating that access is denied or granted to the user based on the user identifier and the application identifier; and

if the status indicates access is granted, the current permission status is a confirmation that access is permitted for the user.

11. The method of claim 8 , wherein the current permission status for the user comprises the most recently available permission information for the user.

12. The method of claim 8 , further comprising providing access to the first third-party application via a browser extension executed on a device of the user.

13. The method of claim 8 , wherein at least one of the credentials is a password for accessing the first third-party application.

14. The method of claim 8 , further comprising:

receiving the permission data from the permission server; and

updating the security policy data, based on the received permission data, such that the updated security policy data comprises a list of third-party applications to which the user is currently permitted access and corresponding sign-on credentials for the third-party applications.

15. A device for providing access to a secure third-party application by a user without revealing at least one credential used to access the application to the user, the device comprising:

a memory configured to store security policy data for the user, wherein the security policy data comprises, for the user, a list of third-party applications to which the user may request access and corresponding sign-on credentials for the third-party applications; and

a processor communicatively coupled to the memory and a network interface, the processor configured to:

host, on a network, a session of a user portal for receiving user input;

receive a query provided by the user in the user portal, the query comprising a first request for display of the list of third-party applications to which the user may request access;

in response to the query, display, in the user portal, the list of third-party applications to which the user may request access, wherein the displayed list is based on the security policy data;

receive, in response to a user selection of a first third-party application from the list displayed in the user portal, a second request for the sign-on credentials for accessing the first third-party application;

in response to the second request for the sign-on credentials, transmit, to a permission server, a third request for confirmation of permission to currently access the first third-party application by the user, wherein the permission server is configured to:

store permission data for the user, the permission data comprising a list of third-party applications to which the user is currently permitted access;

receive the third request from the access management server;

determine a current permission status for accessing the first third-party application by the user, based on the updated permission data; and

generate a response for the third request, the response comprising confirmation or denial of permission to access the first third-party application by the user based on the current permission status;

receive the response from the permission server; and

if the response comprises a confirmation of permission to access the first third-party application by the user:

transmit, via the network, the sign-on credentials to the first third-party application;

redirect the user from the user portal to a sign-on page of the first third-party application;

automatically enter the sign-on credentials in the sign-on page, wherein the credentials are automatically entered in an anonymized format that is not readable by the user; and

automatically submit the entered sign-on credentials in the sign-on page, thereby providing access to the first third-party application to the user.

16. The device of claim 15 , wherein the query comprises a user identifier for the user; and wherein the displayed list of third-party applications to which the user may request access is determined by identifying one or more third-party applications associated with the user identifier in the security policy data.

17. The device of claim 15 , wherein the third request for confirmation of permission to currently access the first third-party application by the user comprises a user identifier for the user and an application identifier for the first third-party application to which the user is requesting access; and

wherein the permission server determines the current permission status for the user by:

accessing the permission data;

identifying a status in the permission data indicating that access is denied or granted to the user based on the user identifier and the application identifier; and

if the status indicates access is granted, the current permission status is a confirmation that access is permitted for the user.

18. The device of claim 15 , wherein the current permission status for the user comprises the most recently available permission information for the user.

19. The device of claim 15 , wherein the processor is further configured to provide access to the first third-party application via a browser extension executed on a device of the user.

20. The device of claim 15 , wherein the processor is further configured to:

receive the permission data from the permission server; and

update the security policy data, based on the received permission data, such that the updated security policy data comprises a list of third-party applications to which the user is currently permitted access and corresponding sign-on credentials for the third-party applications.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 8, 2019
From: FORD, STUART D.; BHANU, SANJAY; DEVASIRVATHAM SAMUEL, MARTIN SUNDER SINGH
To: BANK OF AMERICA CORPORATION
Reel/Frame 049689/0008 →
Continuity (1)
Related Publication 20210014214A1 · Jan 14, 2021
Cited By (3)
US 12,277,209 US 12,561,128 US 12,664,248