ASP.NET Core 3.1: как использовать поставщика согласования

Я создал веб-страницу .NET Core 3.1 MVC с локальными учетными записями (.NET Identity). Я хочу использовать на этой странице поставщика Negotiate. Как это сделать?

Я не хочу включать проверку подлинности Windows и отключать анонимную проверку подлинности, потому что у некоторых пользователей не может быть учетных записей домена.

Код из документации не работает в IIS или Kestrel. Теоретически он предназначен для Kestrel, но я не могу использовать его ни в какой конфигурации.

//in ConfigureServices method
services
.AddAuthentication()
.AddNegotiate( "Negotiate", "Windows Authentication", options => { } );

В документации упоминается команда setspn, но я не могу найти пример для настраиваемого порта, например https: \ localhost: 6001. Во всяком случае, я сомневаюсь, что это требуется.

setspn -S HTTP/localhost myuser

Я что-то напортачил?


person Daniel    schedule 11.10.2020    source источник
comment
Setspn просто добавляет службу на машину и не устанавливает номер порта 6001. Номер порта устанавливается либо в коде C #, либо в файле конфигурации.   -  person jdweng    schedule 12.10.2020