2013-06-28 1 views
4

NTLMv2 인증을 지원하는 node.js가있는 http 서버를 작성하고 싶습니다.NTLM type3 메시지를 확인하는 방법은 무엇입니까? (node.js)

Evertything은 핸드 셰이크 (type1, type2, type3 메시지)로 잘 작동하며 클라이언트 (Chrome 브라우저)에서 type3 메시지를받습니다. 서버로 전송되는이 메시지에는 node.js 서버에서 읽을 수있는 ntlmv2 응답이 있습니다. 이 응답이 유효한 경우 어떻게 인증받을 수 있습니까?

[1]에 따르면 type3 메시지를 이해했으며이 해시를 생성하는 자체 node.js 루틴을 만들 수있었습니다. 그래서 암호가 생기면 브라우저에서 얻은 것과 동일한 해시를 만들 수 있습니다. 하지만 어떻게 암호를 모른 채이 해시/응답을 인증 할 수 있습니까? 네트워크의 DomainController/ActiveDirectory에 대해이를 어떻게 인증 할 수 있습니까?

[2]를 보면 내 질문을 완벽하게 묘사 한 그림이 있습니다. 이 그림의 "4"와 "5"단계를 어떻게 실행할 수 있습니까?

감사합니다, Laryllan

[1] http://davenport.sourceforge.net/ntlm.html#theType3Message

[2] http://msdn.microsoft.com/en-us/library/cc239685.aspx

+0

가능한 중복 [Node.js NTLM HTTP 인증, 3 가지 유형을 처리하는 방법] (http://stackoverflow.com/questions/5541099/node-js-ntlm-http-authentication-how-to-handle -the-the-3-types) –

답변

0

유효한에는 NTLMv2 자격 증명이 SecureChannel가 Active Directory 도메인 컨트롤러의 NETLOGON 서비스와 RPC를 암호화 수행해야합니다. 말하자면, 이것은 어려운 일입니다. 서버가 Java Servlet Filters를 지원하는 경우 Jespa이 있습니다.

그렇지 않으면 아파치 모듈과 같은 웹 서버 수준에서 인증을 수행하거나 IIS에서 IWA를 켜는 모듈이 있습니다. 물론 이러한 유형의 솔루션은 여러 가지면에서 다소 제한적입니다.