복붙노트

[SPRING] Spring 3 및 NTLM 인증

SPRING

Spring 3 및 NTLM 인증

스프링 3은 NTLM 인증을 지원하지 않으므로 스프링 3 웹 응용 프로그램을 사용하고 있습니다. 스프링 보안과 함께 사용할 수있는 다른 대안은 무엇입니까? 사용자가 Active Directory에 로그인 할 때 응용 프로그램에 대해 인증을 받습니까?

Kerberos 솔루션은 현재 옵션이 아니며 NTLM만이 유일한 옵션입니다.

어떤 도움이라도 대단히 중요합니다.

감사

해결법

  1. ==============================

    1.나는 한 번 해냈다. 여기 잡아. AD 수준에서 약간의 설치가 필요합니다. 여기 또는 github에서 질문하십시오.

    나는 한 번 해냈다. 여기 잡아. AD 수준에서 약간의 설치가 필요합니다. 여기 또는 github에서 질문하십시오.

  2. ==============================

    2.문제를 해결하는 가장 간단한 방법은 다음과 같습니다.

    문제를 해결하는 가장 간단한 방법은 다음과 같습니다.

    1) Apache Web Server를 설치하고 modntlm을 사용하여 NTLM 인증을 사용하도록 구성합니다.

    http://modntlm.sourceforge.net/ (마찬가지로 http://modauthkerb.sourceforge.net/을 사용하여 mod_auth_kerb를 사용하여 Kerberos 인증을 사용할 수 있습니다)

    2) Selvlet 컨테이너 (JBoss 또는 Tomcat)에 mod_jk 구성 http://tomcat.apache.org/connectors-doc/generic_howto/proxy.html 인증이 성공하면 Apache는 서블릿 컨테이너에 REMOTE_USER 헤더를 보냅니다. 헤더 (이름에 따라)에는 인증 된 사용자의 사용자 이름이 들어 있습니다 TomcatAuthentication = "false"를 구성하여 Apache가 Apache가 REMOTE_USER 헤더를 보내도록 허용했는지 확인하십시오.

    3) 스프링 보안에서 자신의 PreAuthenticatedProcessingFilter를 구현하고 구성합니다. http://static.springsource.org/spring-security/site/docs/3.1.x/reference/springsecurity-single.html#d0e6167 요청 헤더 인증 필터와 매우 유사해야합니다. http://static.springsource.org/spring-security/site/docs/3.1.x/reference/springsecurity-single.html#d0e6295 또한 사용자 이름에서 도메인 이름을 생략해야합니다. 사용자 이름은 NTLM 또는 Kerberos 인증 후에 REMOTE_USER 헤더에 전송됩니다.

  3. ==============================

    3.와플은 솔루션을 구현하기 위해 스프링 보안과 함께 사용할 수있는 솔루션입니다. https://github.com/dblock/waffle

    와플은 솔루션을 구현하기 위해 스프링 보안과 함께 사용할 수있는 솔루션입니다. https://github.com/dblock/waffle

    나는 예를 들어 hybris와 같이 직접 사용했다. 그들은 몇 가지 예를 가지고 있습니다. 높은 부하에서 문제를 일으킬 수있는 jna3.5를 사용하는 1.5 버전에주의하십시오. 또한 응용 프로그램이 권한 부여를 수행해야하는 경우 협상 보안 필터를 확장해야 할 수도 있음을 유의하십시오 (1.6에서 해결 될 수도 있음).

  4. from https://stackoverflow.com/questions/15533226/spring-3-and-ntlm-authentication by cc-by-sa and MIT license