Заставить Http.sys работать с проверкой подлинности Windows
Я пытаюсь заставить Windows-аутентификацию работать с Kestrel по ссылкам:
https://docs.microsoft.com/en-us/aspnet/core/fundamentals/servers/httpsys?view=aspnetcore-3.0 https://docs.microsoft.com/en-us/aspnet/core/security/authentication/windowsauth?view=aspnetcore-3.0&tabs=visual-studio#httpsys
Вот код.
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.ConfigureWebHostDefaults(webBuilder =>
{
webBuilder.UseHttpSys(options =>
{
options.AllowSynchronousIO = true;
options.Authentication.Schemes = AuthenticationSchemes.None;
options.Authentication.AllowAnonymous = true;
options.MaxConnections = null;
options.MaxRequestBodySize = 30000000;
options.UrlPrefixes.Add("https://localhost:8080");
});
webBuilder.UseStartup<Startup>()
.UseHttpSys(options =>
{
options.Authentication.Schemes =
AuthenticationSchemes.NTLM |
AuthenticationSchemes.Negotiate;
options.Authentication.AllowAnonymous = false;
});
});
Однако при просмотре https://localhost:8080/ отображается следующее сообщение об ошибке (Edge)?
Невозможно безопасно подключиться к этой странице. Это может быть связано с тем, что на сайте используются устаревшие или небезопасные настройки безопасности TLS. Если это повторяется, попробуйте связаться с владельцем сайта.
1 ответ
It's because you didn't have development certification installed on your machine. try this:
dotnet dev-certs https --trust