1

Windows 인증이 활성화 된 새로운 Asp.Net Core 2.0 웹 mvc 응용 프로그램을 만들었습니다. 즉시 재생을 누르면 사용자 자격 증명이 필요하지 않습니다. 나는 다음 응용 프로그램을 중지하고 프로젝트에 익명 인증을 사용하고 다시 재생 공격 때Windows 인증 .Net Core 2.0 보안 프롬프트없이 사용자 이름 표시

"You are not authorized to view this page due to invalid authentication headers."

가 성공적하지만 응용 프로그램을 실행 : 나는 그것을 취소 명중하면 다음과 같은 오류와 401.2 무단 오류 화면으로 나를 리디렉션 내 사용자 이름이 표시되지 않습니다. @User.Identity.Name은 빈 문자열을 반환합니다.

내 사용자 이름을 표시 할 수있는 동안 보안 프롬프트를 표시하려면 어떻게해야합니까? .NET Framework의

, 나는 = 진정한 익명 인증과 함께 web.config 파일에서 이것을 사용하는 것이 그리고 내가 원하는 방식으로 작동합니다 :

<authentication mode="Windows" /> 
<authorization> 
    <deny users="?" /> 
</authorization> 

내가 비주얼 스튜디오 15.4.1를 사용하고를 .

답변

0

나는 <authentication> 태그가 ASP.NET이 아니라 IIS와 관련이 있다고 생각합니다. ASP.NET 코어에서 System.Web 파이프 라인이 실행되지 않습니다.

당신을 통해 인증 설정을 변경할 때 나는 <system.webServer> 섹션은 하나가 수정지고있는 web.config

<configuration> 
    <system.webServer> 
    <security> 
     <authentication> 
     <anonymousAuthentication enabled="false" /> 
     <windowsAuthentication enabled="true" /> 
     </authentication> 
    </security> 
    </system.webServer> 
</configuration> 

에 다음과 같은 구성을 사용하여 ASP.NET 코어와 Windows 인증을 구현에 성공 했어 IIS 관리자.


편집

죄송 벤의 첫 번째 코멘트 후, 나는 당신의 초기 메시지의 일부를 오해, 당신은 IIS에서 응용 프로그램을 배포하려고했던 것을 생각했다.

자격 증명을 묻는 메시지가 표시되므로 Windows 인증이 올바르게 설정되어있는 것처럼 보입니다. 내가 이해하지 못하는 이유는 당신이 묻는 이유입니다. 저는 IE11, Edge 및 Chrome을 사용하고 있으며, 모두들 묻지 않고 Windows 자격 증명을 보내는 방법을 알고 있습니다.

테스트를 수행 할 때 사용하는 브라우저는 무엇입니까? 위에 열거 한 것들을 시도해 볼 수 있습니까?

+0

내 프로젝트에 web.config를 추가하고 제안한 코드를 추가하려고했지만 작동하지 않습니다. 그것은 실제로 창 인증 라인 (500.19 페이지의 관련 구성 데이터가 유효하지 않기 때문에 액세스 할 수 없습니다 오류)에 오류가 발생했습니다. – Ben

+0

이 행운은 아직 없습니다. IE11과 Edge에서 테스트하고 있습니다. 그것은 단지 응용 프로그램의 초기로드에 나를 묻습니다하지만 처음으로 내 자격 증명을 입력 한 후 응용 프로그램을 탐색 할 수 있습니다. 내가 대답을 찾으면이 게시물을 업데이트 할 것입니다. 감사. – Ben