Windows - образ IIS Docker - проблема с аутентификацией - появляется всплывающее окно - PullRequest
0 голосов
/ 11 декабря 2019

Описание проблемы:

Развернутый код приложения Dotnet работал так, что он ищет Windows-аутентификацию (идентификатор пользователя) как часть запроса, и еслидоступно, проверьте в базе данных и впоследствии позволяет пользователю обрабатывать запрос. Это прекрасно работает локально при развертывании на iis.

Однако, тот же код при развертывании с использованием приведенного ниже файла Docker, всплывающее окно Windows, чтобы проверить учетные данные. Ожидаемое поведение, оно должнообработать запрос без всплывающего окна.

Ошибка enter image description here

FROM mcr.microsoft.com/windows/servercore/iis:windowsservercore

SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'Continue'; $verbosePreference='Continue';"]

WORKDIR /inetpub/wwwroot/authenticationApi

COPY . .


RUN Enable-WindowsOptionalFeature -Online -FeatureName IIS-WindowsAuthentication, IIS-BasicAuthentication

## Install dotnet 2.2.7 hosting pack
RUN start-process -Filepath "C:/inetpub/wwwroot/authenticationApi/setup/dotnet-hosting-2.2.7-win.exe" -ArgumentList @('/install', '/quiet', '/norestart') -Wait 

## Create Web Site and Web Application

RUN Import-Module WebAdministration; `
    Remove-Website -Name 'Default Web Site'; `
    New-WebAppPool -Name 'authenticationApiPool'; `
    Set-ItemProperty IIS:\AppPools\authenticationApiPool -Name managedRuntimeVersion -Value ''; `
    Set-ItemProperty IIS:\AppPools\authenticationApiPool -Name enable32BitAppOnWin64 -Value 0; `
    Set-ItemProperty IIS:\AppPools\authenticationApiPool -Name processModel.identityType -Value Service; `
    New-Website -Name 'authentication' `
                -Port 80 -PhysicalPath 'C:\inetpub\wwwroot\authenticationApi' `
                -ApplicationPool 'authenticationApiPool' -force

RUN New-WebApplication -Site 'authentication' -Name AuthenticationAPI -PhysicalPath c:\inetpub\wwwroot\authenticationApi -ApplicationPool 'authenticationApiPool'  -force

RUN Set-WebConfigurationProperty -filter /system.WebServer/security/authentication/AnonymousAuthentication -name enabled -value true -location authentication/AuthenticationAPI;
RUN Set-WebConfigurationProperty -filter /system.WebServer/security/authentication/windowsAuthentication -name enabled -value true -location authentication/AuthenticationAPI;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...