CAS에 대해 인증하고 LDAP에 대해 인증하는 Grails에서 스프링 보안을 설정하려고합니다. 나는 몇 가지 예를 발견했다. (나는 지금 약 20 개의 브라우저 탭을 가지고있다.) 그러나 그들 중 누구도 전체 질문에 대답하지는 않는다. 대부분의 예제는 Grails + CAS 또는 Grails + LDAP이지만 Grails + CAS + LDAP의 예제는 없습니다.Grails에서 CAS와 LDAP를 사용하여 스프링 보안 사용
답변
이
는 일부 AD 정보를 사용자에게 웁니다 파일입니다그래서 나는 그것을 작동 시켰고, 그렇게 나쁘지는 않았지만, 나는 처음으로 @ cantoni의 example을 보았 더라면 좋겠다. 이 일이 정말 쉬울 것입니다. 나의 셋업은 그의 것보다 조금 더 간단하다. 그래서 여기에 그것을 추가 할 것이다.
스프링 보안 코어, CAS 및 LDAP 플러그인을 설치하십시오. 중요 :spring-security-cas:1.0.5
이 업데이트 될 때까지 새 spring-security-core:2.0-RC2
및 spring-security-ldap:2.0-RC2
을 사용하지 않겠습니다. CAS 플러그인이 작동하지 않는 것 같습니다.
plugins {
....
//security
compile ":spring-security-core:1.2.7.3"
compile ":spring-security-cas:1.0.5"
compile ":spring-security-ldap:1.0.6"
...
}
당신은 당신이 또한 내가 아니라고하여 DaoAuthenticationProvider를 사용하지 않는 경우 빠른 시작 명령을 실행할 필요가 없습니다. 에서
구성 코어 및 캐스 플러그인 Config.groovy 파일
//Spring Security Core Config
grails.plugins.springsecurity.providerNames = ['casAuthenticationProvider']
grails.plugins.springsecurity.rejectIfNoRule = true
grails.plugins.springsecurity.securityConfigType = "InterceptUrlMap"
grails.plugins.springsecurity.interceptUrlMap = [
'/js/**': ['IS_AUTHENTICATED_ANONYMOUSLY'],
'/css/**': ['IS_AUTHENTICATED_ANONYMOUSLY'],
'/images/**': ['IS_AUTHENTICATED_ANONYMOUSLY'],
'/login/**': ['IS_AUTHENTICATED_ANONYMOUSLY'],
'/logout/**': ['IS_AUTHENTICATED_ANONYMOUSLY'],
'/**': ['hasAnyRole("ROLE_OPERATOR","ROLE_ADMIN")']
]
//Spring Security CAS Config
grails.plugins.springsecurity.cas.loginUri = '/login'
grails.plugins.springsecurity.cas.serviceUrl = 'http://server.company.com:8080/app-name/j_spring_cas_security_check'
grails.plugins.springsecurity.cas.serverUrlPrefix = 'https://sso.company.com/cas'
grails.plugins.springsecurity.cas.proxyCallbackUrl = 'http://server.company.com:8080/app-name/secure/receptor'
grails.plugins.springsecurity.cas.proxyReceptorUrl = '/secure/receptor'
당신은 생략 할 수 , securityConfigType
및 interceptUrlMap
대신 인터셉터지도의 주석을 사용하려는 경우.
는 resources.groovy 당신이 나에게 도움이 얼마나 아무 생각이
// load ldap roles from spring security
initialDirContextFactory(org.springframework.security.ldap.DefaultSpringSecurityContextSource,
"ldap://123.45.67.89:389"){
userDn = "myLdapUser"
password = "myLdapPwd"
}
ldapUserSearch(org.springframework.security.ldap.search.FilterBasedLdapUserSearch,
"DC=foo,DC=company,DC=com", "sAMAccountName={0}", initialDirContextFactory){
}
ldapAuthoritiesPopulator(org.springframework.security.ldap.userdetails.DefaultLdapAuthoritiesPopulator,
initialDirContextFactory,"OU=foo,DC=bar,DC=company,DC=com"){
groupRoleAttribute = "cn"
groupSearchFilter = "member={0}"
searchSubtree = true
rolePrefix = "ROLE_"
convertToUpperCase = true
ignorePartialResultException = true
}
userDetailsService(org.springframework.security.ldap.userdetails.LdapUserDetailsService,ldapUserSearch,ldapAuthoritiesPopulator){
}
Grails (2.2.0) + Spring Security Plugin + CAS + LDAP를 통합 한 샘플 앱을 (GitHub) 공유했습니다.
내 작품은이 링크를 기반으로합니다 : http://dominikschuermann.de/index.php/2010/11/using-grails-with-cas-and-ldap/,하지만 불행히도 링크가 활성 상태가 아닙니다.
https://github.com/luizcantoni/TestCAS-LDAP-Grails
애플리케이션 정보는 CAS를 사용하여 인증한다. 인증 후, CAS는 사용자에게 Active Directory 정보 (전자 메일 및 이름)를 채 웁니다 (LDAP를 통해). https://github.com/luizcantoni/TestCAS-LDAP-Grails/blob/master/src/groovy/example/PrepopulateUserDetailsService.groovy
확인 resources.groovy : 다음 CAS 및 LDAP 구성을 마지막으로 https://github.com/luizcantoni/TestCAS-LDAP-Grails/blob/master/grails-app/conf/spring/resources.groovy
의 Config.groovy 파일 : https://github.com/luizcantoni/TestCAS-LDAP-Grails/blob/master/grails-app/conf/Config.groovy
- 1. LDAP를 사용한 스프링 보안 인증
- 2. 무국적 스프링 보안 사용
- 3. 스프링 보안 사용
- 4. 스프링 보안 : 상대 경로 사용
- 5. x509 인증 (스프링 보안 사용)
- 6. Grails CAS와 REST 설정
- 7. CAS와 통합 된 봄 보안의 현재 사용자를 얻는 방법?
- 8. Grails에서 스프링 보안을 사용하는 동적 LDAP (
- 9. 스프링 보안 필터 체크인 가속화
- 10. 스프링 보안
- 11. 스프링 보안 액세스 구성을위한 bean 사용 속성
- 12. 스프링 보안 2.0에서 스프링 보안 3.0.7로 마이그레이션
- 13. LDAP를 사용하여 Jenkins 구성
- 14. Grails에서 Spring 보안 설정 문제
- 15. 스프링 보안 및 CAS - 로그인하지 않고 보안 페이지보기
- 16. 스프링 보안
- 17. 스프링 보안
- 18. CAS와 Symfony sfGuard 통합?
- 19. SSL을 사용하여 LDAP를 연결하는 방법
- 20. 3 계층 아키텍처에서 스프링 보안 사용
- 21. 스프링 보안 재 인증 (영구 로그인 사용)
- 22. 스프링 보안 주입 및 사용 UserCache
- 23. 스프링 보안 LDAP 연결
- 24. LDAP를 사용하여 OpenERP에 로그인
- 25. iOS에서 LDAP를 사용하여 인증하기
- 26. 스프링 보안 -/j_spring_security_check에 전달하십시오.
- 27. 스프링 보안 권한
- 28. CAS와 Apache가있는 Alfresco SSO
- 29. 콘텐츠 보안 정책 스프링 보안
- 30. Username 패스워드 보안 스프링 보안
에서 LDAP에 위임 할 당신의 UserDetailsService를 구성합니다. 정말 고마워. – grantmcconnaughey
대단히 환영합니다. 한 번만 stackoverflow의 다른 측면에있는 것이 좋다. 나는 다른 사람들의 답변에서 많은 도움을 얻었으므로 실제로 다른 사람을 도울 수있어서 기쁩니다. – 10GritSandpaper