IIS Express 7.5에서 호스팅되는 node.js (WebMatrix를 통해)를 사용하여 간단한 사이트를 작성하려고했습니다. 통합 Windows 인증을 사용하고 싶습니다.iisnode 및 WebMatrix를 사용하여 Windows 인증 문제
applicationhost.config 비슷한 게시물에 설명되어 있습니다. 또한 web.config도 구성했습니다.
<system.webServer>
<security>
<authentication>
<anonymousAuthentication enabled="false" />
<basicAuthentication enabled="false" />
<windowsAuthentication enabled="true" />
</authentication>
</security>
</system.webServer>
이제 때 요청이 자격 증명을 요청 사이트. 지금은 꽤 좋습니다. 그런 다음 올바른 도메인 자격 증명을 제공하고 오류가 발생했습니다. 401.1
신뢰할 수있는 영역의 사이트와 Fidler는 Kerberos 티켓이 제공한다고 말했습니다.
무엇이 잘못 되었나요?
내가 추적을 확인하고 다음과 같은 오류 있어요 :<EventData>
<Data Name="ContextId">{00000000-0000-0000-3F03-0080000000F8}</Data>
<Data Name="ModuleName">WindowsAuthenticationModule</Data>
<Data Name="Notification">2</Data>
<Data Name="HttpStatus">401</Data>
<Data Name="HttpReason">Unauthorized</Data>
<Data Name="HttpSubStatus">1</Data>
<Data Name="ErrorCode">2147942485</Data>
<Data Name="ConfigExceptionInfo"></Data>
</EventData>
<RenderingInfo Culture="en-US">
<Opcode>MODULE_SET_RESPONSE_ERROR_STATUS</Opcode>
<Keywords>
<Keyword>RequestNotifications</Keyword>
</Keywords>
<freb:Description Data="Notification">AUTHENTICATE_REQUEST</freb:Description>
<freb:Description Data="ErrorCode">The local device name is already in use. (0x80070055)</freb:Description>
</RenderingInfo>
확인을, 나는 몇 시간 동안 문제를 알아 내려고 만 발견 된 그 규칙이나 웹에서 URL 재 작성 모듈를 제거합니다. 설정
다음<rewrite>
<rules>
<!-- Don't interfere with requests for logs -->
<rule name="LogFile" patternSyntax="ECMAScript" stopProcessing="true">
<match url="^[a-zA-Z0-9_\-]+\.js\.logs\/\d+\.txt$" />
</rule>
<!-- First we consider whether the incoming URL matches a physical file in the /public folder -->
<rule name="StaticContent">
<action type="Rewrite" url="public{REQUEST_URI}" />
</rule>
<!-- All other URLs are mapped to the Node.js application entry point -->
<rule name="DynamicContent">
<conditions>
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
</conditions>
<action type="Rewrite" url="app.js" />
</rule>
</rules>
</rewrite>
모두 (app.js의 올바른 취급 제외) 잘 작동합니다
그래서, 질문 난 WebMatrix 용 원본 node.js 템플릿을 유지하고 그러한 오류없이 Windows 인증을 사용하는 방법은 무엇입니까?
또 하나의 질문은 node.js의 IIS 모듈 파이프 라인에서 수집 한 모든 컨텍스트 정보를 얻는 방법입니다.