Inter-application delegated authentication
AssigneeTwitter, Inc.
InventorsJeffrey Seibert, Jr., Michael Ducker
Life of this patent
Estimating the term…
Abstract
Disclosed is a system for delegating authentication of an untrusted application executing on a client device. For delegated authentication, an untrusted application relies on a trusted application executing in the same environment for authentication purposes. The delegated authentication process avoids requiring the user of the untrusted application to provide authentication credentials. The disclosed system for delegating authentication enables any trusted application executing in the same computing environment to authenticate the untrusted application.
Claims21
A system comprising:
- one or more computers and one or more storage devices storing instructions that when executed by one or more computers cause the one or more computers to perform respective operations, the operations comprising:
- receiving a first authentication request from a first application installed on a first client device, the first authentication request comprising a first application identifier for the first application and a first device identifier for the first client device;
- receiving data representing one or more device profiles, each of the one or more device profiles including a device identifier for a client device and a list of applications, wherein each application of the list of applications includes a corresponding application identifier for the application;
- using the first device identifier to determine, from the one or more device profiles, a first device profile for first client device;
- determining, from a list of applications in the first device profile, whether the first application identifier is included in the list of applications;
- in response to determining that the first application identifier is not included in the list of applications, authenticating the first application using at least one application in the list of applications in the first device profile;
- and
- updating the first device profile by adding the first application to the list of applications in the first device profile.
A method comprising:
- receiving a first authentication request from a first application installed on a first client device, the first authentication request comprising a first application identifier for the first application and a first device identifier for the first client device;
- receiving data representing one or more device profiles, each of the one or more device profiles including a device identifier for a client device and a list of applications, wherein each application of the list of applications includes a corresponding application identifier for the application;
- using the first device identifier to determine, from the one or more device profiles, a first device profile for first client device;
- determining, from a list of applications in the first device profile, whether the first application identifier is included in the list of applications;
- in response to determining that the first application identifier is not included in the list of applications, authenticating the first application using at least one application in the list of applications in the first device profile;
- and
- updating the first device profile by adding the first application to the list of applications in the first device profile.
One or more non-transitory computer-readable storage media encoded with instructions that, when executed by one or more computers, cause the one or more computers to perform operations comprising:
- receiving a first authentication request from a first application installed on a first client device, the first authentication request comprising a first application identifier for the first application and a first device identifier for the first client device;
- receiving data representing one or more device profiles, each of the one or more device profiles including a device identifier for a client device and a list of applications, wherein each application of the list of applications includes a corresponding application identifier for the application;
- using the first device identifier to determine, from the one or more device profiles, a first device profile for first client device;
- determining, from a list of applications in the first device profile, whether the first application identifier is included in the list of applications;
- in response to determining that the first application identifier is not included in the list of applications, authenticating the first application using at least one application in the list of applications in the first device profile;
- and
- updating the first device profile by adding the first application to the list of applications in the first device profile.
Dependencies are inferred from the claim text.