我有一些自定义管理任务要在服务器上执行,但我希望能够通过 Web 服务/应用程序远程管理服务器。要在服务器上运行的任务将需要提升的访问权限。
一个简单的答案是在服务器上以管理员身份运行 ASP.NET 应用程序,这将授予它执行这些管理任务所需的所有权限。但是不强烈推荐以管理员用户身份运行网络应用程序(可以理解)。那么,我有什么选择来提供可以执行管理任务的 Web 应用程序?到目前为止,我的想法是:
- ASP.NET 的某种模拟。
- 以管理员(SYSTEM?)身份在服务器上运行的辅助进程,具有命名管道通信,供 ASP.NET 应用程序插入。
这两种方法的优缺点可能是什么?有没有我没有考虑过的替代方案?在我看来,ASP.NET 模拟可能仍然授予 Web 应用程序太多的权限,但创建辅助进程和维护所有适当的接口是理想情况下可以避免的额外工作。