IP Library Granted Patent US 10,380,119
Granted Patent B2
US 10,380,119 · App. 15/174,868 · Granted Aug 13, 2019

Authorization and authentication based on an individual's social network

Inventor: Christopher Lunt (Mountain View, CA)
Assignee: Facebook, Inc.
G06F16/24575G06F16/248G06F16/9024G06F21/31G06F21/604G06Q50/01H04L51/04H04L51/12H04L51/32H04L63/08H04L63/10H04L63/101H04L63/145H04L67/02H04L67/306H04L67/32
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,380,119
App. No.
15/174,868
Granted
Aug 13, 2019
Kind
B2
Abstract

In particular embodiments, a method includes receiving, from a client device associated with a first entity of a communication service, a search query from the first entity, identifying one or more content items matching the search query, the one or more content items being associated with one or more second entities of the communication service, and sending, to the client device responsive to the search query, one or more search results corresponding to one or more of the content items, respectively, each content item of the search results being associated with a second entity that does not correspond to an entity on a gray list, wherein the gray list is based on a black list.

Claims (44)

1. A method comprising, by one or more computing devices:

receiving, from a client device associated with a first entity of a communication service, a search query from the first entity;

identifying, by one or more of the computing devices, one or more content items matching the search query, the one or more content items being associated with one or more second entities of the communication service;

retrieving, by one or more of the computing devices, a black list comprising a first set of entity IDs of a first set of entities;

sending, by one or more of the computing devices, a query to a social graph server for a list comprising IDs of entities related to entities on the black list, wherein a relationship database of the social graph server stores a graph data structure comprising a plurality of nodes corresponding to a plurality of entities and a plurality of edges connecting the nodes, each edge establishing a degree of separation between two nodes;

determining, by one or more of the computing devices, a gray list based on the IDs of entities received in response to the query to the social graph server, wherein the gray list comprises a second set of entity IDs of a second set of entities, each entity in the second set of entities being associated with at least one entity in the first set of entities; and

sending, to the client device responsive to the search query, one or more search results corresponding to one or more of the content items, respectively, each content item of the search results being associated with a second entity that does not correspond to an entity on the gray list.

2. The method of claim 1 , further comprising:

accessing, by one or more of the computing devices, a graph data structure comprising a plurality of nodes and a plurality of edges connecting the nodes, the nodes comprising a first node corresponding to the first entity and one or more second nodes corresponding to the one or more second entities, respectively.

3. The method of claim 2 , further comprising:

filtering, by one or more of the computing devices, from the search results each search result corresponding to a content item associated with a second entity that corresponds to a second node that is connected to the first node in the graph data structure through a series of edges and nodes that comprises a node corresponding to an entity on the gray list.

4. The method of claim 2 , further comprising:

identifying, for each second node, one or more series of edges and nodes connecting the first node and the second node; and

determining, by one or more of the computing devices, for each series of edges and nodes, whether the series comprises a node corresponding to an entity on the gray list.

5. The method of claim 2 , wherein each entity on the gray list corresponds to a node separated by one degree of separation in the graph data structure from at least one node corresponding to an entity on the black list.

6. The method of claim 1 , wherein the black list is specified by the first entity.

7. The method of claim 1 , wherein the black list is specified by the communication service.

8. The method of claim 1 , further comprising:

filtering, by one or more of the computing devices, from the search results each search result corresponding to a content item associated with a second entity that corresponds to an entity on the gray list.

9. The method of claim 1 , wherein the content items comprise posts by the second entities.

10. The method of claim 1 , wherein the content items comprise user profiles of the second entities.

11. The method of claim 1 , wherein the communication service comprises an online social network.

12. The method of claim 1 , wherein the communication service comprises an e-mail service.

13. The method of claim 1 , wherein the communication service comprises a messaging service.

14. The method of claim 1 , wherein the search query is received from a third-party application via an API associated with the communication service.

15. The method of claim 1 , wherein the search query is inputted by the first entity at a query interface of a native application associate with the communication service.

16. The method of claim 1 , further comprising:

accessing, by one or more of the computing devices, a white list comprising a third set of entity IDs of a third set of entities; and

authorizing, by one or more of the computing devices, sending of each search result corresponding to a content item associated with a second entity that corresponds to an entity on the white list.

17. The method of claim 1 , wherein each search result references a name or identifier of the second entity associated with the content item corresponding to the search results.

18. A service provider system comprising: one or more processors; and one or more servers having a memory storing computer-executable instructions that when executed by one or more of the processors cause the processors to:

receive, from a client device associated with a first entity of a communication service, a search query from the first entity;

identify one or more content items matching the search query, the one or more content items being associated with one or more second entities of the communication service;

retrieve a black list comprising a first set of entity IDs of a first set of entities;

send a query to a social graph server for a list comprising IDs of entities related to entities on the black list, wherein a relationship database of the social graph server stores a graph data structure comprising a plurality of nodes corresponding to a plurality of entities and a plurality of edges connecting the nodes, each edge establishing a degree of separation between two nodes;

determine a gray list based on the IDs of entities received in response to the query to the social graph server, wherein the gray list comprises a second set of entity IDs of a second set of entities, each entity in the second set of entities being associated with at least one entity in the first set of entities; and

send, to the client device responsive to the search query, one or more search results corresponding to one or more of the content items, respectively, each content item of the search results being associated with a second entity that does not correspond to an entity on the gray list.

19. A system comprising:

means for receiving, from a client device associated with a first entity of a communication service, a search query from the first entity;

means for identifying one or more content items matching the search query, the one or more content items being associated with one or more second entities of the communication service;

means for retrieving a black list comprising a first set of entity IDs of a first set of entities;

means for sending a query to a social graph server for a list comprising IDs of entities related to entities on the black list, wherein a relationship database of the social graph server stores a graph data structure comprising a plurality of nodes corresponding to a plurality of entities and a plurality of edges connecting the nodes, each edge establishing a degree of separation between two nodes;

means for determining a gray list based on the IDs of entities received in response to the query to the social graph server, wherein the gray list comprises a second set of entity IDs of a second set of entities, each entity in the second set of entities being associated with at least one entity in the first set of entities; and

means for sending, to the client device responsive to the search query, one or more search results corresponding to one or more of the content items, respectively, each content item of the search results being associated with a second entity that does not correspond to an entity on the gray list.

Assignments (1)
CHANGE OF NAME Recorded Dec 20, 2021
From: FACEBOOK, INC.
To: META PLATFORMS, INC.
Reel/Frame 058553/0802 →
Continuity (4)
Continuation 14289984 · May 29, 2014
Continuation 13565475 · Aug 2, 2012
Continuation 10897766 · Jul 22, 2004
Related Publication 20160283559A1 · Sep 29, 2016