SYSTEM AND METHOD FOR MANAGING THIRD PARTY APPLICATION PROGRAM ACCESS TO USER INFORMATION VIA A NATIVE APPLICATION PROGRAM INTERFACE (API)
First Claim
1. A method for managing third party application program access to user information via a particular native application program interface (API) comprising:
- providing a wrapped native API comprising a wrapper library;
inspecting a third party application program for the presence of the wrapper library in an unmodified form;
inspecting the third party application program to identify API calls; and
instrumenting at least one of the identified API calls to at least one circumventing API which circumvents the native API, wherein the instrumenting comprises;
wrapping the at least one circumventing API to generate at least one wrapped non-circumventing API; and
modifying the third party application program to redirect the at least one of the identified API calls from the at least one circumventing API to the at least one wrapped non-circumventing API;
receiving from the third party application program via the wrapper library executed on a user device a request for a permission to access user information;
receiving an authorization to provide the permission to access the user information; and
providing the permission to access the user information to the third party application program.
10 Assignments
0 Petitions
Accused Products
Abstract
A method for managing third party application program access to user information via a particular native application program interface (API) is provided. The method includes providing a wrapped native API including a wrapper library and inspecting a third party application program for the presence of the wrapper library in an unmodified form. The application program is inspected to identify API calls. An identified API call to a circumventing API is instrumented by wrapping the circumventing API to generate a wrapped non-circumventing API and modifying the third party application program to redirect the identified API call from the circumventing API to the wrapped non-circumventing API. A request for a permission to access user information is received from the third party application program via the wrapper library executed on a user device. An authorization is received to provide the permission to access the user information, and the permission to access the user information is provided to the executed third party application program.
419 Citations
25 Claims
-
1. A method for managing third party application program access to user information via a particular native application program interface (API) comprising:
-
providing a wrapped native API comprising a wrapper library; inspecting a third party application program for the presence of the wrapper library in an unmodified form; inspecting the third party application program to identify API calls; and instrumenting at least one of the identified API calls to at least one circumventing API which circumvents the native API, wherein the instrumenting comprises; wrapping the at least one circumventing API to generate at least one wrapped non-circumventing API; and modifying the third party application program to redirect the at least one of the identified API calls from the at least one circumventing API to the at least one wrapped non-circumventing API; receiving from the third party application program via the wrapper library executed on a user device a request for a permission to access user information; receiving an authorization to provide the permission to access the user information; and providing the permission to access the user information to the third party application program. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A method for validating an application program implementing a wrapper library configured to access a particular native application program interface (API), the method comprising:
-
inspecting the application program for the presence of the wrapper library in an unmodified form; inspecting the application program to identify application program interface (API) calls; and instrumenting at least one of the identified API calls to at least one circumventing API which circumvents the native API, wherein the instrumenting comprises; wrapping the at least one circumventing API to generate at least one wrapped non-circumventing API; and modifying the application program to redirect the at least one of the identified API calls from the at least one circumventing API to the at least one wrapped non-circumventing API. - View Dependent Claims (21, 22, 23, 24)
-
-
25. A system for validating an application program implementing a wrapper library configured to access a particular native application program interface (API), the system comprising at least one computing device including at least one memory comprising instructions operable to enable the computing device to perform a procedure comprising:
-
inspecting the application program for the presence of the wrapper library in an unmodified form; inspecting the application program to identify application program interface (API) calls; and instrumenting at least one of the identified API calls to at least one circumventing API which circumvents the native API, wherein the instrumenting comprises; wrapping the at least one circumventing API to generate at least one wrapped non-circumventing API; and modifying the application program to redirect the at least one of the identified API calls from the at least one circumventing API to the at least one wrapped non-circumventing API.
-
Specification