US9990435B2ExpiredUtilityA1

Controlling access of user information using social-networking information

60
Assignee: FACEBOOK INCPriority: Jun 14, 2004Filed: Jul 14, 2015Granted: Jun 5, 2018
Est. expiryJun 14, 2024(expired)· nominal 20-yr term from priority
H04L 63/102G06F 16/9024G06F 40/134G06F 16/338G06F 16/248G06F 16/284G06F 16/958G06F 16/24578G06Q 30/0275G06F 17/30696G06F 17/30554G06F 17/30958G06F 17/2235G06F 17/30864G06F 17/2247G06F 17/3089G06F 17/3053G06F 17/30595G06F 17/30867G06F 16/9535G06F 16/951G06F 16/9536G06F 16/9538
60
PatentIndex Score
0
Cited by
89
References
33
Claims

Abstract

In particular embodiments, a computing system may receive a search query from a first user of an online social network, identify one or more second users of the online social network that match the search query, where each identified second user may have a visibility setting specifying which other users of the online social network can view information from the online social network associated with the second user, and send to the first user information associated with each second user having a relationship within the online social network to the first user such that the visibility setting of the second user specifies that the first user can view the information associated with the second user.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
       1. A method comprising:
 receiving, from a client system of a first user of an online social network, a search query comprising one or more keywords; 
 identifying, by one or more computing devices, one or more second users of the online social network that match the one or more keywords of the search query, wherein each second user is associated with a visibility setting that specifies which other users of the online social network can view information from the online social network associated with the second user based on a type of relationship between the other user and the second user within the online social network; 
 determining, by one or more computing devices, for each identified second user, whether the visibility setting of the second user specifies that the first user can view the information associated with the second user by comparing the type of relationship specified by the visibility setting associated with the second user with a type of relationship between the first user and the second user within the online social network; and 
 sending, to the client system in response to the search query, one or more search results corresponding to one or more of the identified second users for presentation to the first user, respectively, with each second user having been determined to have visibility settings specifying that the first user can view the information associated with the second user, wherein each search result comprises information associated with the corresponding second user, and wherein the search results are presented in ranked order based on interactions associated with the corresponding second users on the online social network. 
 
     
     
       2. The method of  claim 1 , further comprising accessing a graph data structure comprising a plurality of nodes and a plurality of edges connecting the nodes, each edge between two nodes representing a relationship between them and establishing a single degree of separation between them, wherein:
 the first user corresponds to a first node of the plurality of nodes; and 
 the one or more second users correspond to one or more second nodes, respectively, of the plurality of nodes. 
 
     
     
       3. The method of  claim 2 , wherein the visibility setting of each second user specifies which other users of the online social network can view information from the online social network associated with the second user based on the other user's degree of separation from the second user. 
     
     
       4. The method of  claim 3 , wherein the visibility setting specifies a degree of separation of one, two, three, or all. 
     
     
       5. The method of  claim 3 , further comprising determining, for each of the second users, the degree of separation between the first node corresponding to the first user and the second node corresponding to the second user. 
     
     
       6. The method of  claim 5 , wherein determining the degree of separation between the first node corresponding to the first user and the second node corresponding to the second user comprises, for each of the second users:
 sending, to a graph server of the online social network, a request comprising a first identifier of the first user and a second identifier of the second user; and 
 receiving, from the graph server, the degree of separation between the first user and the second user. 
 
     
     
       7. The method of  claim 3 , wherein determining whether the visibility setting of the second user specifies that the first user can view the information associated with the second user comprises determining whether the second user corresponds to a second node having a degree of separation less than or equal to the degree of separation specified in the visibility setting of the second user. 
     
     
       8. The method of  claim 1 , wherein the information associated with the second user is personal information of the second user. 
     
     
       9. The method of  claim 1 , wherein the information associated with the second user is information provided by the second user. 
     
     
       10. The method of  claim 1 , wherein the type of relationship of each second user to the first user within the online social network is specified at least in part by the second user. 
     
     
       11. The method of  claim 1 , further comprising, for each second user having a visibility setting specifying that the first user cannot view information from the online social network associated with the second user, providing a notification that the information associated with the second user is not accessible to the first user. 
     
     
       12. The method of  claim 1 , further comprising:
 receiving, from each second user, the information associated with the second user; and 
 storing the information associated with each second user in a data store of the online social network. 
 
     
     
       13. The method of  claim 1 , wherein the search query is received via a third-party system using an API call, wherein the third-party system that is separate from and external to the online social network. 
     
     
       14. The method of  claim 1 , wherein the information associated with each second user comprises a link to a profile page of the second user. 
     
     
       15. The method of  claim 14 , further comprising ranking the one or more search results based on a number of interactions with the corresponding profile pages by one or more friends of the first user on the online social network. 
     
     
       16. The method of  claim 14 , wherein the search results are presented in ranked order based on a number of interactions with the corresponding profile pages by one or more friends of the first user on the online social network. 
     
     
       17. A system comprising: a memory comprising instructions executable by one or more processors; and the one or more processors coupled to the memory and operable to execute the instructions, the one or more processors being operable when executing the instructions to:
 receive, from a client system of a first user of an online social network, a search query comprising one or more keywords; 
 identify, by one or more computing devices, one or more second users of the online social network that match the one or more keywords of the search query, wherein each second user is associated with a visibility setting that specifies which other users of the online social network can view information from the online social network associated with the second user based on a type of relationship between the other user and the second user within the online social network; 
 determine, by one or more computing devices, for each identified second user, whether the visibility setting of the second user specifies that the first user can view the information associated with the second user by comparing the type of relationship specified by the visibility setting associated with the second user with a type of relationship between the first user and the second user within the online social network; and 
 send, to the client system in response to the search query, one or more search results corresponding to one or more of the identified second users for presentation to the first user, respectively, with each second user having been determined to have visibility settings specifying that the first user can view the information associated with the second user, wherein each search result comprises information associated with the corresponding second user, and wherein the search results are presented in ranked order based on interactions associated with the corresponding second users on the online social network. 
 
     
     
       18. One or more computer-readable non-transitory storage media embodying software operable when executed by one or more computer systems to:
 receive, from a client system of a first user of an online social network, a search query comprising one or more keywords; 
 identify, by one or more computing devices, one or more second users of the online social network that match the one or more keywords of the search query, wherein each second user is associated with a visibility setting that specifies which other users of the online social network can view information from the online social network associated with the second user based on a type of relationship between the other user and the second user within the online social network; 
 determine, by one or more computing devices, for each identified second user, whether the visibility setting of the second user specifies that the first user can view the information associated with the second user by comparing the type of relationship specified by the visibility setting associated with the second user with a type of relationship between the first user and the second user within the online social network; and 
 send, to the client system in response to the search query, one or more search results corresponding to one or more of the identified second users for presentation to the first user, respectively, with each second user having been determined to have visibility settings specifying that the first user can view the information associated with the second user, wherein each search result comprises information associated with the corresponding second user, and wherein the search results are presented in ranked order based on interactions associated with the corresponding second users on the online social network. 
 
     
     
       19. The system of  claim 17 , wherein the processors are further operable when executing the instructions to:
 access a graph data structure comprising a plurality of nodes and a plurality of edges connecting the nodes, each edge between two nodes representing a relationship between them and establishing a single degree of separation between them, wherein:
 the first user corresponds to a first node of the plurality of nodes; and 
 the one or more second users correspond to one or more second nodes, respectively, of the plurality of nodes. 
 
 
     
     
       20. The system of  claim 19 , wherein the visibility setting of each second user specifies which other users of the online social network can view information from the online social network associated with the second user based on the other user's degree of separation from the second user. 
     
     
       21. The system of  claim 20 , wherein the visibility setting specifies a degree of separation of one, two, three or all. 
     
     
       22. The system of  claim 20 , wherein the processors are further operable when executing the instructions to:
 determine, for each of the second users, the degree of separation between the first node corresponding to the first user and the second node corresponding to the second user. 
 
     
     
       23. The system of  claim 22 , wherein determining the degree of separation between the first node corresponding to the first user and the second node corresponding to the second user comprises, for each of the second users:
 send, to a graph server of the online social network, a request comprising a first identifier of the first user and a second identifier of the second user; and 
 receive, from the graph server, the degree of separation between the first user and the second user. 
 
     
     
       24. The system of  claim 20 , wherein determining whether the visibility setting of the second user specifies that the first user can view the information associated with the second user comprises determining whether the second user corresponds to a second node having a degree of separation less than or equal to the degree of separation specified in the visibility setting of the second user. 
     
     
       25. The system of  claim 17 , wherein the information associated with the second user is personal information of the second user. 
     
     
       26. The system of  claim 17 , wherein the information associated with the second user is information provided by the second user. 
     
     
       27. The system of  claim 17 , wherein the type of relationship of each second user to the first user within the online social network is specified at least in part by the second user. 
     
     
       28. The system of  claim 17 , wherein the processors are further operable when executing the instructions to:
 provide a notification that the information associated with the second user is not accessible to the first user for each second user having a visibility setting specifying that the first user cannot view information from the online social network associated with the second user. 
 
     
     
       29. The system of  claim 17  wherein the processors are further operable when executing the instructions to:
 receive, from each second user, the information associated with the second user; and 
 store the information associated with each second user in a data store of the online social network. 
 
     
     
       30. The system of  claim 17 , wherein the search query is received via a third-party system using an API call, wherein the third-party system that is separate from and external to the online social network. 
     
     
       31. The system of  claim 17 , wherein the information associated with each second user comprises a link to a profile page of the second user. 
     
     
       32. The system of  claim 31 , wherein the processors are further operable when executing the instructions to:
 rank the one or more search results based on a number of interactions with the corresponding profile pages by one or more friends of the first user on the online social network. 
 
     
     
       33. The system of  claim 31 , wherein the search results are presented in ranked order based on a number of interactions with the corresponding profile pages by one or more friends of the first user on the online social network.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.