IP Library Granted Patent US 9,769,122
Granted Patent B2
US 9,769,122 · App. 14/471,313 · Granted Sep 19, 2017

Anonymous single sign-on to third-party systems

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 9,769,122
App. No.
14/471,313
Granted
Sep 19, 2017
Kind
B2
Abstract

An online system receives from a third-party application on a client device, an anonymous login request to anonymously log a user of the online system into a third-party system associated with the third-party application. Responsive to receiving the anonymous login request, the online system generates a permissions user interface (UI) that provides an interface component including an option for the user to anonymously log into the third-party system using the user's login information for the online system. The online system provides the permissions UI to the client device, and receives permissions information from the client device. The online system generates an anonymous identifier that allows the user to login to the third-party system. The online system provides the anonymous identifier to the third-party application to allow anonymous login of the user into the third-party system in accordance with the permissions information.

Claims (91)

1. A non-transitory computer-readable storage medium storing executable computer program instructions, the computer program instructions comprising instructions that when executed cause a computer processor to perform steps comprising:

receiving, by an online system from a third-party application on a client device of a user, an indication that a user who is logging into the third party system associated with the third party application:

(1) has selected an anonymous login option at a login page of the third party application that has a validated login option and the anonymous login option, and

(2) has been redirected to the online system to implement the user's anonymous login request to anonymously log the user into the third party system, the third party system being external to and separate from the online system;

responsive to receiving the anonymous login request, generating by the online system a permissions user interface (“UI”) that provides an interface component including an option for the user to anonymously log into the third party system using the user's login information for the online system;

providing the permissions UI to the client device, wherein responsive to input from the user, the permissions UI generates permissions information confirming that the user has requested to anonymously log into the third party system without the online system sharing any personally identifiable information (“PII”) of the user with the third-party application and the third party system;

responsive to receiving the permission information, generating an access token for the user to anonymously log into the third party system;

providing the access token to the third-party application;

receiving a request for an anonymous identifier from the third-party application, the request including the access token;

generating, by the online system, an anonymous identifier that allows the user to login to the third party system, wherein the anonymous identifier is unique to the client device and to the third party system associated with the third party application such that the anonymous identifier can be re-used by the user to anonymously login to the third party application in the future; and

providing the anonymous identifier to the third-party application to allow anonymous single sign-on of the user into the third party system in accordance with the permissions information.

2. The non-transitory computer-readable storage medium of claim 1 , wherein generating the permissions UI further comprises:

generating a second interface component that provides the user with an option to log into the third party system via a validated login option that shares the user's PII with the third-party application; and

generating a third interface component that provides the user with an option to log into the third party system via an anonymous login option that shares some, but not all, of user's PII, with the third-party application.

3. The non-transitory computer-readable storage medium of claim 1 , wherein the instructions, when executed, further cause a computer processor to perform steps comprising:

identifying a plurality of third-party systems the user is logged into, the plurality of third-party systems including the third party system;

generating a graphical user interface that lists the identified third-party systems; and

providing the graphical user interface to the client device.

4. The non-transitory computer-readable storage medium of claim 3 , wherein the identified plurality of third-party systems the user is logged into includes at least one third-party system that the user is logged into via a validated login option that shares the user's PII with the third-party application.

5. The non-transitory computer-readable storage medium of claim 1 , wherein the instructions, when executed, further cause a computer processor to perform steps comprising:

receiving another anonymous login request from the third-party application on the client device;

determining that a number of times the online system has received anonymous login requests associated with the user and the third-party application is greater than a threshold value;

generating a second permissions UI that provides the user with an option to log into the third party system using the user's login information for the online system in a manner that shares some of the user's PII with the third-party application; and

providing the second permissions UI to the client device.

6. The non-transitory computer-readable storage medium of claim 1 , wherein the instructions, when executed, further cause a computer processor to perform steps comprising:

receiving another anonymous login request from the third-party application on the client device;

determining that a number of times the online system has received anonymous login requests associated with the user and the third-party application is greater than a threshold value;

generating a second permissions UI that provides the user with an option to log into the third party system using the user's login information for the online system in a manner that shares some, but not all, of the user's PII with the third-party application; and

providing the second permissions UI to the client device.

7. A method comprising:

receiving, by an online system from a third-party application on a client device of a user, an indication that a user who is logging into the third party system associated with the third party application:

(1) has selected an anonymous login option at a login page of the third party application that has a validated login option and the anonymous login option, and

(2) has been redirected to the online system to implement the user's anonymous login request to anonymously log the user into the third party system, the third party system being external to and separate from the online system;

responsive to receiving the anonymous login request, generating by the online system a permissions user interface (“UI”) that provides an interface component including an option for the user to anonymously log into the third party system using the user's login information for the online system;

providing the permissions UI to the client device, wherein responsive to input from the user, the permissions UI generates permissions information confirming that the user has requested to anonymously log into the third party system without the online system sharing any personally identifiable information (“PII”) of the user with the third-party application and the third party system;

responsive to receiving the permission information, generating an access token for the user to anonymously log into the third party system;

providing the access token to the third-party application;

receiving a request for an anonymous identifier from the third-party application, the request including the access token;

generating, by the online system, an anonymous identifier that allows the user to login to the third party system, wherein the anonymous identifier is unique to the client device and to the third party system associated with the third party application such that the anonymous identifier can be re-used by the user to anonymously login to the third party application in the future; and

providing the anonymous identifier to the third-party application to allow anonymous single sign-on of the user into the third party system in accordance with the permissions information.

8. The method of claim 7 , wherein generating the permissions UI further comprises:

generating a second interface component that provides the user with an option to log into the third party system via a validated login option that shares the user's PII with the third-party application; and

generating a third interface component that provides the user with an option to log into the third party system via an anonymous login option that shares some, but not all, of user's PII, with the third-party application.

9. The method of claim 7 , further comprising:

identifying a plurality of third-party systems the user is logged into, the plurality of third-party systems including the third party system;

generating a graphical user interface that lists the identified third-party systems; and

providing the graphical user interface to the client device.

10. The method of claim 9 , wherein the identified plurality of third-party systems the user is logged into includes at least one third-party system that the user is logged into via a validated login option that shares the user's PII with the third-party application.

11. The method of claim 7 , further comprising:

receiving another anonymous login request from the third-party application on the client device;

determining that a number of times the online system has received anonymous login requests associated with the user and the third-party application is greater than a threshold value;

generating a second permissions UI that provides the user with an option to log into the third party system using the user's login information for the online system in a manner that shares some of the user's PII with the third-party application; and

providing the second permissions UI to the client device.

12. The method of claim 7 , further comprising:

receiving another anonymous login request from the third-party application on the client device;

determining that a number of times the online system has received anonymous login requests associated with the user and the third-party application is greater than a threshold value;

generating a second permissions UI that provides the user with an option to log into the third party system using the user's login information for the online system in a manner that shares some, but not all, of the user's PII with the third-party application; and

providing the second permissions UI to the client device.

13. A system comprising:

a processor; and

a non-transitory computer-readable storage medium storing executable modules that when executed cause the processor to perform steps comprising:

receiving, by an online system from a third-party application on a client device of a user, an indication that a user who is logging into the third party system associated with the third party application:

(1) has selected an anonymous login option at a login page of the third party application that has a validated login option and the anonymous login option, and

(2) has been redirected to the online system to implement the user's anonymous login request to anonymously log the user into the third party system, the third party system being external to and separate from the online system;

responsive to receiving the anonymous login request, generating by the online system a permissions user interface (“UI”) that provides an interface component including an option for the user to anonymously log into the third party system using the user's login information for the online system;

providing the permissions UI to the client device, wherein responsive to input from the user, the permissions UI generates permissions information confirming that the user has requested to anonymously log into the third party system without the online system sharing any personally identifiable information (“PII”) of the user with the third-party application and the third party system;

responsive to receiving the permission information, generating an access token for the user to anonymously log into the third party system;

providing the access token to the third-party application;

receiving a request for an anonymous identifier from the third-party application, the request including the access token;

generating, by the online system, an anonymous identifier that allows the user to login to the third party system, wherein the anonymous identifier is unique to the client device and to the third party system associated with the third party application such that the anonymous identifier can be re-used by the user to anonymously login to the third party application in the future; and

providing the anonymous identifier to the third-party application to allow anonymous single sign-on of the user into the third party system in accordance with the permissions information.

14. The system of claim 13 , wherein

generating the permissions UI further comprises generating a second interface component that provides the user with an option of selecting a login persona, of a plurality of login personas, wherein each persona identifies different types of the user's PII that are not shared with the third party system if the user elects to log into the third party system using that persona; and

the received permissions information identifies a login persona selected by the user, configured to share at least one type of PII with the third party system.

15. The system of claim 13 , wherein generating the permissions UI further comprises:

generating a second interface component that provides the user with an option to log into the third party system via a validated login option that shares all types of the user's PII with the third-party application; and

generating a third interface component that provides the user with an option to log into the third party system via an anonymous login option that shares some, but not all, of user's PII, with the third-party application.

16. The system of claim 13 , wherein the received permissions information indicates that no PII is to be shared with the third-party application.

17. The system of claim 13 , wherein the received permissions information identifies at least one portion of the user's PII is to be shared with the third-party application, and wherein the executable modules when executed cause the processor to perform steps further comprising:

sharing the identified portion of the user's PII with the third-party application.

18. The system of claim 13 , wherein the executable modules when executed cause the processor to perform steps further comprising:

receiving another anonymous login request from the third-party application on the client device;

determining that a number of times the online system has received anonymous login requests associated with the user and the third-party application is greater than a threshold value;

generating a second permissions UI that provides the user with an option to log into the third party system using the user's login information for the online system in a manner that shares some of the user's PII with the third-party application; and

providing the second permissions UI to the client device.

19. The system of claim 13 , wherein the executable modules when executed cause the processor to perform steps further comprising:

identifying a plurality of third-party systems the user is logged into, the plurality of third-party systems including the third party system;

generating a graphical user interface that lists the identified third-party systems; and

providing the graphical user interface to the client device.

20. The system of claim 19 , wherein the identified plurality of third-party systems the user is logged into includes at least one third-party system that the user is logged into via a validated login option that shares the user's PII with the third-party application.

21. The method of claim 7 , wherein providing the anonymous identifier to the third-party application allows graduated single sign-on of the user into the third party system in accordance with the permissions information.

Assignments (3)
CHANGE OF NAME Recorded Nov 18, 2021
From: FACEBOOK, INC.
To: META PLATFORMS, INC.
Reel/Frame 058897/0824 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 31, 2016
From: POLL, DAVID EITAN
To: FACEBOOK, INC.
Reel/Frame 039298/0564 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 31, 2016
From: WINNER, CAITLIN ROTHROCK; YU, JAMES J.; VISHWANATH, TIRUNELVELI R.; TAUZIET, CHRISTOPHE MARCEL RENE; DUPPENTHALER, MARK GINGA MISAWA; BAO, LING
To: FACEBOOK, INC.
Reel/Frame 039515/0656 →