Windows 인증을 사용하는 OWIN/Katana WebAPI가 있습니다. 로컬로 실행하면 내 Windows 자격 증명을 가져갈 수 있습니다. 그러나 WebAPI를 서버/클러스터에 배포하면 로그인 및 암호를 묻는 메시지가 계속 표시됩니다. 심지어이뿐만 아니라 시도OWIN/Katana WebAPI는 Windows 인증을 사용하여 로그인/암호를 계속 묻습니다.
//Set up integrated windows authentication.
HttpListener listener = (HttpListener)appBuilder.Properties["System.Net.HttpListener"];
listener.AuthenticationSchemes = AuthenticationSchemes.IntegratedWindowsAuthentication;
:
나는 현재하여 Startup.cs에 다음이
HttpListener listener = (HttpListener)appBuilder.Properties["System.Net.HttpListener"];
listener.AuthenticationSchemes = AuthenticationSchemes.Negotiate;
피들러, 나는 서버에 (내 API를 칠 수 있었다 인증 사용. 하지만 다른 응용 프로그램에서 API를 사용하면 자동으로 401 Unauthorized로 돌아옵니다. Windows 인증을 특별히 만든 경우에도 수동 로그인을 요구하는 이유는 무엇입니까?
나는이 기사를 다음 봤는데 : 내 웹 클라이언트 (@LexLi 덕분에) 실패하는 이유https://blogs.msdn.microsoft.com/chiranth/2013/09/20/ntlm-want-to-know-how-it-works/
발신자가 사용자 자격 증명을 전달하지 않으면 메시지가 표시됩니다. 적절한 클라이언트 측 코드를 작성해야합니다. –
답장을 보내 주셔서 감사합니다 @ LexLi -이 정상적인 동작이 왜 발생합니까? 클라이언트 컴퓨터의 Windows 로그인 자격 증명이 자동으로 전달되면 안됩니까? 디버그에서 API를 로컬에서 실행했을 때 왜 나에게 프롬프트가 표시되지 않습니까? 어리석은 질문에 대해 유감스럽게 생각합니다. 저는 아직 승인을 처음 받았습니다. – Jacky
특히 코드를 통해 호출 할 때 사용자 자격 증명이 자동으로 전달되지 않습니다. IE를 올바르게 구성하지 않으면 IE도 프롬프트합니다. 당신이 배우기에는 너무 많은 것이 있습니다. –