Authorizing application access via custom UWP SID
An information handling system may include at least one processor and a non-transitory, computer-reading medium having instructions thereon that are executable by the at least one processor for: providing access to one or more objects via a plurality of application programming interface (API) endpoints; receiving a call to a particular API endpoint from an app; and determining, based on a security identifier (SID) of the app, whether the call should be allowed; wherein the SID of the app is based on one or more custom capabilities defined in a manifest of the app.
1. An information handling system comprising:
at least one processor; and
a non-transitory, computer-readable medium having instructions thereon that are executable by the at least one processor for:
providing access to one or more objects via a plurality of application programming interface (API) endpoints, wherein the one or more objects are Win32 services;
receiving a call to a particular API endpoint from an app, wherein the app is a Universal Windows Programming (UWP) app; and
determining, based on a security identifier (SID) of the app, whether the call should be allowed, wherein the determining includes querying a process associated with the app to determine an access control list (ACL) associated with the app to verify that the particular API endpoint is mapped to an SID included in the ACL;
wherein the SID of the app is based on one or more custom capabilities defined in a manifest of the app.
2. The information handling system of claim 1 , wherein the app executes on the information handling system.
3. The information handling system of claim 1 , wherein the one or more objects are configured to provide access to a hardware device of the information handling system, the hardware device including a camera and/or a microphone.
4. A method comprising:
an information handling system providing access to one or more objects via a plurality of application programming interface (API) endpoints, wherein the one or more objects are Win32 services;
the information handling system receiving a call to a particular API endpoint from an app, wherein the app is a Universal Windows Programming (UWP) app; and
the information handling system determining, based on a security identifier (SID) of the app, whether the call should be allowed, wherein the determining includes querying a process associated with the app to determine an access control list (ACL) associated with the app to verify that the particular API endpoint is mapped to an SID included in the ACL;
wherein the SID of the app is based on one or more custom capabilities defined in a manifest of the app.
5. The method of claim 4 , wherein the app executes on the information handling system.
6. The method of claim 4 , wherein the one or more objects are configured to provide access to a hardware device of the information handling system, the hardware device including a camera and/or a microphone.
7. An article of manufacture comprising a non-transitory, computer-readable medium having computer-executable code thereon that is executable by a processor of an information handling system for:
providing access to one or more objects via a plurality of application programming interface (API) endpoints, wherein the one or more objects are Win32 services;
receiving a call to a particular API endpoint from an app, wherein the app is a Universal Windows Programming (UWP) app; and
determining, based on a security identifier (SID) of the app, whether the call should be allowed, wherein the determining includes querying a process associated with the app to determine an access control list (ACL) associated with the app to verify that the particular API endpoint is mapped to an SID included in the ACL;
wherein the SID of the app is based on one or more custom capabilities defined in a manifest of the app.
8. The article of claim 7 , wherein the app executes on the information handling system.
9. The article of claim 7 , wherein the one or more objects are configured to provide access to a hardware device of the information handling system, the hardware device including a camera and/or a microphone.