1. Field
The present embodiments relate to techniques for restoring user control over an online account.
2. Related Art
Online services presently enable millions of users to perform various actions, such as communicating via e-mail and exchanging information on blogs or social networks. In order to use an online service, a user typically establishes an account, which is subsequently accessed by providing login information, such as an account identifier and a password.
Unfortunately, users of online services frequently lose the ability to access their accounts. For example, they may forget their login information or their accounts may be stolen by unauthorized users, who gained access to a user's account and then changed the user's password (which is sometimes referred to as ‘hijacking’).
To address this problem, many online service providers offer self-recovery systems that users can use to recover their accounts. For example, when a user first sets up an account, the user may provide recovery information, including: a secondary password (such as a secret question and an associated answer), an alternate contact address associated with the account (such as an e-mail address to which recovery information can be sent), and/or additional information about the user (such as biographical information or a Social Security number).
However, these self-recovery systems do not always work. For example, in addition to forgetting login information, users often forget the recovery information associated with their accounts. Moreover, if their accounts are hijacked, the unauthorized users may be able to modify the recovery information before the users are able to recover their accounts.
If a user has problems with a self-recovery system, the only recourse for the user is to contact the appropriate service provider. During this process, the user typically provides additional information about the account that only the user would know, and a customer-service representative evaluates this additional information on a case-by-case basis. However, this is a time-consuming process, which is frustrating for users and increases operating expenses for the service provider.
One embodiment provides a system that responds to a request for corrective action. During operation, the system receives the request for corrective action from a potential user of an online account. This request may include account information, registered-user information and history information for activities associated with the online account. Then, the system accesses stored information for the online account, which includes stored history information for activities associated with the online account. Next, the system generates an ownership score based at least in part on the information in the request and the stored information for the online account. After determining if the potential user is an owner of the online account based at least in part on the ownership score, the system performs remedial action in response to the request.
During normal operation, the online account may be accessed by providing login information. Moreover, the online account may be associated with: an e-mail account, a blog, a website, a search history, health records, an advertising account, and/or a merchandise account.
However, if the potential user has lost control over the online account, the potential user may submit the request. For example, the loss of control may include forgetting login information associated with the online account or an unauthorized party taking control of the online account. Moreover, the request may be included in a document that is submitted online, such as a web page.
The potential user may provide a variety of information to establish their identity or to substantiate their ownership of the online account. For example, the registered-user information may include information associated with other services provided to the potential user by a host of the online account. Moreover, the account information may include currently inactive login information that was previously used to access the online account. Additionally, the history information for activities associated with the online account may include account activities within a time interval, such as individuals e-mailed by the potential user during the time interval.
In order to determine if the potential user is the owner of the online account, the system may access a variety of information. For example, the stored history information for activities associated with the online account which is accessed by the system may include one or more locations of a registered user when the registered user previously accessed the online account.
Moreover, the system may perform one or more additional operations when determining if the user is the owner. For example, the system may compare a location of the potential user at the time the request was submitted with the one or more locations and/or a location from which a most-recent change to the account was received with the one or more locations. Additionally, the system may compare a weighted summation of determining factors to a threshold value.
Note that the remedial action may include: returning control of the online account to the owner; disabling the online account; providing login information to the owner; and/or taking no action in response to the request. Moreover, the system may communicate to the potential user the remedial action performed in response to the request.
Another embodiment provides a method including at least some of the above-described operations that are performed by the system.
Another embodiment provides a computer-program product for use in conjunction with a computer system. This computer-program product may include instructions corresponding to at least some of the above-described operations that are performed by the computer system.
Another embodiment provides the computer system.
Note that like reference numerals refer to corresponding parts throughout the drawings.
The following description is presented to enable any person skilled in the art to make and use the disclosed embodiments, and is provided in the context of a particular application and its requirements. Various modifications to the disclosed embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be applied to other embodiments and applications without departing from the spirit and scope of the present embodiments. Thus, the present disclosure is not intended to be limited to the embodiments shown, but is to be accorded the widest scope consistent with the principles and features disclosed herein.
Embodiments of a computer system, a method, and a computer-program product (e.g., software) for use with the computer system are described. These embodiments may be used to evaluate a user request to regain control of an online account. For example, the user request may be submitted online using a web page, and may include information that establishes the user's identity or that substantiates that the user is the owner of the online account, such as a history of recent activities associated with the online account. This information may be evaluated by comparing it to stored information associated with the online account, such as a stored history of recent activities or one or more locations of a registered user when the registered user previously accessed the online account. After evaluating the user request, remedial action may be performed. This remedial action may include: returning control of the online account to the owner; disabling the online account; providing login information to the owner; and/or taking no action in response to the user request.
By evaluating the user request and taking appropriate remedial action, this technique allows users to recover control of an online account without having to recall recovery information, such as a secondary password, a secret question/answer, and/or alternate contact information. Moreover, a service provider of the online account may be able to handle user requests more efficiently, thereby reducing time delays, user frustration and operating expenses.
We now describe embodiments of a process for responding to a request for corrective action. During normal operation of an online account, a user may access the online account, for example, by providing login information (such as a username and a password). This online account may be associated with a variety of services or types of information provided by a host or a service provider (henceforth referred to as an ‘online service’ and a ‘service provider,’ respectively). For example, the online account may be associated with: an e-mail account of the user, a user blog, a user website, a search engine (such as a search history for the user), health records of the user, an advertising account of the user, and/or a merchandise account of the user (which the user may use to sell or purchase items).
However, if the user loses control over the online account (such as when the user forgets the login information or an unauthorized party takes control of the online account), the user may submit a request for corrective action to the service provider of the online account (who views the user as a ‘potential user’ until the request is evaluated). As described further below with reference to
During operation, the computer system receives the request for corrective action from a potential user of an online account (110). This request may include account information, registered-user information and history information for activities associated with the online account. Then, the computer system accesses stored information for the online account (112), which includes stored history information for activities associated with the online account. Next, the computer system generates an ownership score based at least in part on the information in the request and the stored information for the online account (114). After determining if the potential user is an owner of the online account based at least in part on the ownership score (116), the computer system performs remedial action in response to the request (118).
In some embodiments, the computer system optionally communicates to the potential user the remedial action performed in response to the request (120). Note that process 100 may include additional or fewer operations. Moreover, the order of the operations may be changed, and/or two or more operations may be combined into a single operation.
We now describe embodiments of the computer system that may be used to receive and respond to a request for corrective action.
Additionally, the online service associated with the online account may be implemented using a software-application tool that is embedded in the web page. This software-application tool may be a software package written in: JavaScript™ (a trademark of Sun Microsystems, Inc.), e.g., the software-application tool includes programs or procedures containing JavaScript instructions, ECMAScript (the specification for which is published by the European Computer Manufacturers Association International), VBScript™ (a trademark of Microsoft, Inc.) or any other client-side scripting language. In other words, the embedded software-application tool may include programs or procedures containing: JavaScript, ECMAScript instructions, VBScript instructions, or instructions in another programming language suitable for rendering by the web browser or another client application on the computer 210. Therefore, in some embodiments the user of the software-application tool may not have to download an application program onto computer 210 in order to use it.
As noted previously, if the user loses control of the online account, the user may send a request for corrective action to the service provider, for example, by completing one or more forms on a web page (which may be the same web page as that associated with the online account or a different web page) using the web browser on computer 210, which is then submitted to server 214 via network 212.
The information provided by the user may include information that only the true owner of the online account should know. For example, the provided information may include account information 314, such as currently inactive login information (e.g., an old password) that was previously used to access the online account. Moreover, the provided information may include registered-user information 316, such as information associated with one or more other services provided to the user by the service provider (e.g., if the online account is an e-mail account, the user may provide a uniform resource locator or URL for a website, such as a user blog, that is also hosted by the service provider). Additionally, the provided information may include history information 318 for activities associated with the online account, such as account activities within a time interval (e.g., if the online account is an e-mail account, the history information 318 may include individuals recently e-mailed by the user and/or the most frequently e-mailed contacts of the user). In general, the information provided by the user may be classified as unique identifiers (such as an e-mail address of the user which is directly associated with the online account) and non-unique identifiers for the user (such as an e-mail address of the user which is associated with multiple online accounts).
Continuing the discussion of
Then, an investigation application 218 that is resident on and which executes on server 214 may determine if the user (who, from the perspective of server 214, is still a potential user of the online account) is the owner of the online account. For example, the investigation application 218 may compare the information provided by the user with the stored information, and may add points for each piece of correct information provided and/or may subtract points for each piece of incorrect information provided.
In an exemplary embodiment, during the determining, the investigation application 218 compares a weighted summation of determining factors (which is sometimes referred to as an ownership score) to a threshold value, and if the weighted sum exceeds the threshold, the potential user is deemed to be the owner of the online account. Note that the various factors included in the determination (e.g., for an e-mail account, frequent e-mail contacts, e-mails sent or received during the last week or month, and/or old or inactive login information) may have different weights (i.e., some factors may be more important than others).
One or more of these factors may include locations, such as an Internet-protocol (IP) address from which the request was submitted (for example, an IP address associated with computer 210) and one or more IP address(es) from which the online account has been previously accessed. Changes in these locations may be indicative of suspicious behavior such as account hijacking. Other indications of suspicious behavior may include: receiving changes to login information for the online account from a location (such as an IP address) that is different from the location(s) from which the online account has previously been accessed; and/or receiving changes to the login information from a location that matches one of the locations from which the online account has been previously accessed, but having subsequent accesses of the online account occurring from one or more different locations than the location(s) from which the online account has been previously accessed.
After a decision has been made regarding the request (i.e., after the determining operation 116 in
We now describe the computer system in more detail.
Memory 424 in the computer system 400 may include volatile memory and/or non-volatile memory. More specifically, memory 424 may include: ROM, RAM, EPROM, EEPROM, flash, one or more smart cards, one or more magnetic disc storage devices, and/or one or more optical storage devices. Memory 424 may store an operating system 426 that includes procedures (or a set of instructions) for handling various basic system services for performing hardware-dependent tasks. While not shown in
Memory 424 may also include one or more program modules (or a set of instructions), including: discovery module 430 (or a set of instructions), investigation module 432 (or a set of instructions), and remedial-action module 434 (or a set of instructions).
After receiving one or more requests 436, such as a request from potential user A 438-1 or potential user B 438-2 regarding their online accounts, discovery module 430 may access stored information, such as account information 440 and/or registered-user information 444. For example, for an e-mail account, account information 440 may include history information 442, such as frequent e-mail contacts, recent e-mails sent or received, and/or one or more locations from which the registered-user accessed the e-mail account. Moreover, registered-user information 444 may include past (inactive) and current login information 446, which may include one or more locations from which this information was received, as well as any other services 448 that the registered users receive from the service provider(s) associated with their online accounts. For example, a service provider may support a user's e-mail account and may host the user's blog.
Then, investigation module 432 may determine if a potential user associated with a given request is the owner of a given online account, even if the potential user does not match the current registered user per registered-user information 444. For example, investigation module 432 may compare a weighted summation of factors to one or more thresholds 450, where different factors may be associated with different weights 452. These factors may include comparisons of stored information and information provided by potential users along with requests 436.
Based at least in part on the calculation performed by investigation module 432, remedial-action module 434 may perform remedial action in response to the requests 436. For example, if the weighted sum exceeds a high threshold, the given online account may be restored to the potential user by providing existing or new login information 446. However, if the weighted sum is less than a low threshold, the given online account may be deactivated. And if the weighted sum is between these thresholds, no action may be taken in response to the given request. Regardless of the decision, communication module 428 may communicate the remedial action taken to the potential user.
Instructions in the various modules in the memory 424 may be implemented in: a high-level procedural language, an object-oriented programming language, and/or in an assembly or machine language. The programming language may be compiled or interpreted, i.e., configurable or configured, to be executed by the one or more processing units 410.
Although the computer system 400 is illustrated as having a number of discrete components,
In some embodiments, some or all of the functionality of the computer system 400 may be implemented in one or more application-specific integrated circuits (ASICs) and/or one or more digital signal processors (DSPs). Moreover, the functionality of computer system 400 may be implemented more in hardware and less in software, or less in hardware and more in software, as is known in the art.
We now describe embodiments of a data structure that may be used in computer system 200 (
Computer system 200 (
The foregoing descriptions of embodiments have been presented for purposes of illustration and description only. They are not intended to be exhaustive or to limit the present embodiments to the forms disclosed. Accordingly, many modifications and variations will be apparent to practitioners skilled in the art. Additionally, the above disclosure is not intended to limit the present embodiments. The scope of the present embodiments is defined by the appended claims.