IP Library Granted Patent US 11,601,414
Granted Patent B2
US 11,601,414 · App. 17/468,801 · Granted Mar 7, 2023

Contact consolidation across multiple services

Inventors: William Christian Pinner (Roswell, GA); David Shaw (Buford, GA); Evan Hurst (Atlanta, GA)
Assignee: VMware, Inc.
H04L63/0815H04L63/0853H04L63/102G06F16/951
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,601,414
App. No.
17/468,801
Granted
Mar 7, 2023
Kind
B2
Abstract

Disclosed are various approaches for retrieving contacts from a plurality of federated services. In one example, an authentication notification is received from an identity manager. The authentication notification can include an identifier for a user account and a single sign-on token for the user account. A federated service to authenticate on behalf of the user account is identified. The single sign-on token is transmitted to the federated service for authentication. An authentication token and a refresh token are received from the federated service. The authentication token is determined to expire within a threshold time period. A determination is made that the refresh token has not expired. The refresh token is transmitted to the federated service for a replacement authentication token.

Claims (64)

1. A system for retrieving contacts from a plurality of federated services, comprising:

a computing device comprising a processor and a memory;

machine-readable instructions stored in the memory that, when executed by the processor, cause the computing device to at least:

receive an authentication notification from an identity manager, the authentication notification including an identifier for a user account and a single sign-on token for the user account;

identify a federated service to authenticate on behalf of the user account;

transmit the single sign-on token to the federated service for authentication;

receive an authentication token and a refresh token from the federated service;

determine that the authentication token is set to expire within a threshold time period;

determine that the refresh token has not expired; and

transmit the refresh token to the federated service for a replacement authentication token.

2. The system for retrieving the contacts from the plurality of federated services of claim 1 , wherein the machine-readable instructions cause the computing device to at least:

receive the replacement authentication token from the federated service; and

replace the authentication token with the replacement authentication token in the memory.

3. The system for retrieving the contacts from the plurality of federated services of claim 1 , wherein identifying the federated service to authenticate on behalf of the user account further comprises:

determining that the user account has permission to access the federated service among a plurality of federated services based on the user account being included in a list of authorized user accounts for the federated service.

4. The system for retrieving the contacts from the plurality of federated services of claim 3 , wherein the machine-readable instructions cause the computing device to at least:

monitor for an expiration of the replacement authentication token; and

determine whether the refresh token has expired based on the expiration of the replacement authentication token.

5. The system for retrieving the contacts from the plurality of federated services of claim 1 , wherein the single sign-on token is included in a JSON web token.

6. The system for retrieving the contacts from the plurality of federated services of claim 1 , wherein the machine-readable instructions cause the computing device to at least:

receive a request from a contact service for the replacement authentication token, wherein the request comprises the user account and an identifier for the federated service; and

provide the replacement authentication token to the contact service.

7. The system for retrieving the contacts from the plurality of federated services of claim 1 , wherein the refresh token has a longer expiration time-limit than the authentication token.

8. A method for retrieving contacts from a plurality of federated services, comprising:

receiving an authentication notification from an identity manager, the authentication notification including an identifier for a user account and a single sign-on token for the user account;

identifying a federated service to authenticate on behalf of the user account;

transmitting the single sign-on token to the federated service for authentication;

receiving an authentication token and a refresh token from the federated service;

determining that the authentication token is set to expire within a threshold time period;

determining that the refresh token has not expired; and

transmitting the refresh token to the federated service for a replacement authentication token.

9. The method for retrieving the contacts from the plurality of federated services of claim 8 , further comprising:

receiving the replacement authentication token from the federated service; and

replacing the authentication token with the replacement authentication token in memory.

10. The method for retrieving the contacts from the plurality of federated services of claim 8 , wherein identifying the federated service to authenticate on behalf of the user account further comprises:

determining that the user account has permission to access the federated service among a plurality of federated services based on the user account being included in a list of authorized user accounts for the federated service.

11. The method for retrieving the contacts from the plurality of federated services of claim 8 , further comprising:

monitoring for an expiration of the replacement authentication token; and

determining whether the refresh token has expired based on the expiration of the replacement authentication token.

12. The method for retrieving the contacts from the plurality of federated services of claim 8 , wherein the single sign-on token is included in a JSON web token.

13. The method for retrieving the contacts from the plurality of federated services of claim 8 , further comprising:

receiving a request from a contact service for the replacement authentication token, wherein the request comprises the user account and an identifier for the federated service; and

providing the replacement authentication token to the contact service.

14. The method for retrieving the contacts from the plurality of federated services of claim 8 , wherein the refresh token has a longer expiration time-limit than the authentication token.

15. A non-transitory computer readable medium for retrieving contacts from a plurality of federated services, the non-transitory computer readable medium comprising machine-readable instructions that, when executed by a processor of a computing device, cause the computing device to at least:

receive an authentication notification from an identity manager, the authentication notification including an identifier for a user account and a single sign-on token for the user account;

identify a federated service to authenticate on behalf of the user account;

transmit the single sign-on token to the federated service for authentication;

receive an authentication token and a refresh token from the federated service;

determine that the authentication token is set to expire within a threshold time period;

determine that the refresh token has not expired; and

transmit the refresh token to the federated service for a replacement authentication token.

16. The non-transitory computer readable medium for retrieving the contacts from the plurality of federated services of claim 15 , wherein the machine-readable instructions cause the computing device to at least:

receive the replacement authentication token from the federated service; and

replace the authentication token with the replacement authentication token in memory.

17. The non-transitory computer readable medium for retrieving the contacts from the plurality of federated services of claim 15 , wherein identifying the federated service to authenticate on behalf of the user account further comprises:

determining that the user account has permission to access the federated service among a plurality of federated services based on the user account being included in a list of authorized user accounts for the federated service.

18. The non-transitory computer readable medium for retrieving the contacts from the plurality of federated services of claim 15 , wherein the machine-readable instructions cause the computing device to at least:

monitor for an expiration of the replacement authentication token; and

determine whether the refresh token has expired based on the expiration of the replacement authentication token.

19. The non-transitory computer readable medium for retrieving the contacts from the plurality of federated services of claim 15 , wherein the single sign-on token is included in a JSON web token.

20. The non-transitory computer readable medium for retrieving the contacts from the plurality of federated services of claim 15 , wherein the machine-readable instructions cause the computing device to at least:

receive a request from a contact service for the replacement authentication token, wherein the request comprises the user account and an identifier for the federated service; and

provide the replacement authentication token to the contact service.

Assignments (3)
PATENT ASSIGNMENT Recorded Aug 5, 2024
From: VMWARE LLC
To: OMNISSA, LLC
Reel/Frame 068327/0365 →
SECURITY INTEREST Recorded Jul 3, 2024
From: OMNISSA, LLC
To: UBS AG, STAMFORD BRANCH
Reel/Frame 068118/0004 →
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0395 →