Patent ID: 9619222
Date: 2017-04-11
CPC Classifications: G06F

Claim:
1. A method performed at least in part by at least one data processor, comprising: modifying an application program to create an augmented application program, where modifying comprises including at least one call and a software library in the application program, where the at least one call is to a method that comprises part of the software library; upon receiving a request from the augmented application program via a device where the augmented application program has been installed and is resident, registering the device against a user of the device and authenticating the augmented application program based at least in part upon information received with the request; and in response to successfully registering the device and authenticating the augmented application program, sending a policy file to the augmented application program via the device, the policy file being configured to control use of only the authenticated augmented application program when executed on the registered device; where the application program is augmented to modify an entry point of the application program to inject code to cause a call to the software library that displays, on the device, user interface components configured to gather information regarding the user and to securely send from the device the user's information and information descriptive of the device, and where the application program is further augmented to at least periodically confirm that the authenticated augmented application program is authorized to continue to be executed on the registered device; where the policy file is an original policy file, further comprising sending a modified policy file to the augmented application program to take the place of the original policy file; and where the modified policy file is sent to the augmented application program by pushing the modified policy file or in response to a polling request received from the augmented application program, where the polling request is received from the augmented application program in response to the call made to the method that comprises part of the software library.