Passing authentication information via parameters
Systems and methods for passing account authentication information via parameters. A server can provide, to a client device, an account parameter derived from an account credential used to authenticate a first application to insert into a link. The link can include an address referencing a second application. The account parameter can be passed from the first application to the second application responsive to an interaction on the link. The server can receive from the second application of the client device, subsequent to passing the account parameter from the first application to the second application, a request to authenticate the second application including the account parameter. The server can authenticate the client device for the second application using the account parameter. The server can transmit, responsive to authenticating the client device for the second application, an authentication indication to the second application of the client device.
1. A method for passing authentication information, implemented in a first application executing on a client device, the method comprising:
transmitting, by one or more processors to one or more servers, an account credential used to authenticate a first application;
receiving, by the one or more processors from the one or more servers, a link referencing a second application executing on the client device;
detecting, by the one or more processors, an interaction with the link;
obtaining, by the one or more processors, an account parameter generated using the account credential; and
passing the account parameter to the second application, to cause the second application to request authentication from the server based on the account parameter.
2. The method of claim 1 , wherein obtaining the account parameter includes receiving the account parameter in the link, from the one or more server.
3. The method of claim 1 , obtaining the account parameter includes:
determining that the link does not include the account parameter; and
generating the account parameter using the account credential.
4. The method of claim 3 , further comprising:
determining, by the one or more processors, a type of the account parameter; and
in response to determining that the type is obfuscated, generating an obfuscated parameter using two-way encryption of the account credential, the account parameter including the obfuscated parameter.
5. The method of claim 3 , further comprising:
determining, by the one or more processors, a type of the account parameter; and
in response to determining that the type is fingerprint:
generating a fingerprint parameter using one-way encryption of the account credential, the account parameter including the fingerprint parameter, and
storing the fingerprint parameter in a memory.
6. The method of claim 3 , further comprising:
determining, by the one or more processors, a type of the account parameter; and
in response to determining that the type is cache:
generating a credential token for identifying the account credential, the account parameter including the credential token, and
storing the credential token in a cache.
7. The method of claim 1 , wherein passing the account parameter to the second application includes using a Uniform Resource Locator (URL) or a Uniform Resource Identifier (URI).
8. The method of claim 1 , wherein passing the account parameter to the second application includes using a function call.
9. A method for obtaining authentication information, the method comprising:
receiving, by a second application executing on a client device and from a first application executing on the client device, an account parameter;
determining, by the second application executing on the client device and based on the account parameter, an account credential;
transmitting, by the second application executing on the client device and to a server, the account credential; and
in response to receiving authentication confirmation from the server that is based on the account credential, applying, by the second application executing on the client device, account settings to continue execution of the second application.
10. The method of claim 9 , wherein determining the account credential includes:
determining, by the second application executing on the client device, a type of the account parameter; and
in response to determining that the type is obfuscated, transmitting, by the second application executing on the client device, an obfuscated account credential to the server.
11. The method of claim 9 , wherein determining the account credential includes:
determining, by the second application executing on the client device, a type of the account parameter; and
in response to determining that the type is fingerprint, transmitting, by the second application executing on the client device, a fingerprinted account credential to the server.
12. The method of claim 9 , wherein determining the account credential includes:
determining, by the second application executing on the client device, a type of the account parameter; and
in response to determining that the type is cache, retrieving, by the second application executing on the client device, the account credential from the cache.
13. A client device comprising:
one or more processors; and
a memory storing instructions that implement a first application and a second application, wherein the first application is configured to:
transmit, to one or more servers, an account credential used to authenticate a first application;
receive, from the one or more servers, a link referencing the second application;
detect an interaction with the link;
obtain an account parameter generated using the account credential; and
pass the account parameter to the second application, to cause the second application to request authentication from the server based on the account parameter.
14. The client device of claim 13 , wherein obtaining the account parameter includes receiving the account parameter in the link, from the one or more server.
15. The client device of claim 13 , obtaining the account parameter includes:
determining that the link does not include the account parameter; and
generating the account parameter using the account credential.
16. The client device of claim 15 , wherein the first application is further configured to:
determine a type of the account parameter; and
in response to determining that the type is obfuscated, generate an obfuscated parameter using two-way encryption of the account credential, the account parameter including the obfuscated parameter.
17. The client device of claim 15 , wherein the first application is further configured to:
determine a type of the account parameter; and
in response to determining that the type is fingerprint:
generate a fingerprint parameter using one-way encryption of the account credential, the account parameter including the fingerprint parameter, and
store the fingerprint parameter in a memory.
18. The client device of claim 15 , wherein the first application is further configured to:
determine a type of the account parameter; and
in response to determining that the type is cache:
generate a credential token for identifying the account credential, the account parameter including the credential token, and
store the credential token in a cache.
19. The client device of claim 13 , wherein passing the account parameter to the second application includes using a Uniform Resource Locator (URL) or a Uniform Resource Identifier (URI) or using a function call.