Ошибка 401 несанкционированный при использовании проверки подлинности Windows в IIS

#angular #asp.net-core #iis #windows-authentication #applicationpoolidentity

Вопрос:

Машина: Windows server 2016 (IIS 10)

Рамки: ASP.net ядро 2.2, Веб-Api

У меня есть простое ASP.NET основная серверная сторона Web-api с клиентской стороной angular 8. В настоящее время приложение размещено в моем локальном IIS. Веб-api содержит конечные точки без каких-либо атрибутов авторизации. Все работает нормально, пока конфигурация IIS настроена на анонимную аутентификацию.

Когда я устанавливаю проверку подлинности IIS на проверку подлинности Windows (я намерен использовать ее в будущем в других конечных точках, для которых требуется проверка подлинности KerberosAD), я получаю ошибку 401 «Несанкционированный доступ» при попытке достичь тех же конечных точек.

Я не нашел способа избежать этого !!

Как я могу достичь конечной точки как анонимный, если установлена проверка подлинности Windows ?

В соответствии с ошибкой: «Веб — сервер не настроен для анонимного доступа, и не был получен требуемый заголовок авторизации» — Могу ли я отправить заголовок с «withCredentials» : «false» — попробовал, и это не помогло.

В разделе Проверка подлинности -> Начальные свойства проверки подлинности Windows:

Расширенная защита: выключена

Включить аутентификацию в режиме ядра: верно

Это мой пример конечной точки веб-api:

 [Route("dosomething")]
[HttpGet]

public IActionResult DoSomething()
{
     ...
}
 

Сторона клиента:

 getData(): Observable<someModel>
{
    return this.httpClient.get<someModel>(<url>)
    .pipe(
    tap(response => 
    {
        do something 
    }),
    catchError(error =>
    {
        <doSomeErrorHandling>
        return throwError(error);
    })
    );
}
 

The application pool is defined as:

Версия .NET CLR: «Нет управляемого кода»

Режим управляемого конвейера: Интегрированный

Идентичность : Идентификатор приложения