We are building an assistant UWP app for Windows 10 & Windows Mobile Devices. On Windows 10 we want to offer some sort of security enforcement to the user, e.g. making sure his antivirus is up to date and so on. This should be done through Powershell with Admin privileges.
Question: What would be the best approach here from architecture & user experience point of view?
Idea 1: Architecture: UWP app communicates with a service (which is written as .NET Core web.api and offers simple REST Interface) and consumes this service through http client.
The service run's as local system. We want to host it in Kestrel webservice as this is supported when targeting .net 4.6. Prototype worked so far but everything runs in debug mode & not sure if there will be some issues with the isolation of UWP apps.
From my point of view, the UWP app is consuming the service through normal http requests which should not be isolated or intercepted in any way, right? There is no difference on consuming a local hosted webapi instead compared to a cloud api from UWP isolation perspective, right?
Idea 2: User experience: User downloads the app from public store. App checks if it is running on Windows 10, if so, it checks if the helper windows service is already installed (through a API call on the webservice). If not, it offers the user the ability to download the service from a web page and install it (evaluated prompt).
What would be the best way to do it? Just giving a download link to the user? Or can I start a process from a UWP app that prompts to install an MSI? It should be as simple as possible.