首页 > 解决方案 > 如何将 ASP.NET Core 3.1 托管为虚拟服务帐户?

问题描述

我有一个具有功能的 ASP.NET Core 3.1 WebAPI 应用程序,UseWindowsService我可以将其作为窗口服务托管。

 public static IHostBuilder CreateHostBuilder(string[] args) =>
        Host.CreateDefaultBuilder(args)
            .ConfigureWebHostDefaults(webBuilder =>
            {
                webBuilder.UseHttpSys();
                webBuilder.ConfigureServices((context, services) =>
                {
                    services.Configure<HttpSysOptions>(options =>
                    {
                        options.UrlPrefixes.Add(context.Configuration["HttpSysOptions:UrlPrefix"]);
                    });
                });

                webBuilder.UseStartup<Startup>();
            })
            //host as window service
            .UseWindowsService()

现在我可以使用以下命令将其安装为窗口服务,

 SC create MyService displayname= "My Service" binpath= "C:\Program Files (x86)\Demo\Demo.exe" start= auto

这运行为local system. 完美的!

现在我想将其作为虚拟服务帐户运行,NT Service\Demo而不是local system,我该怎么做?请建议!

标签: c#asp.net-core

解决方案


推荐阅读