簡體   English   中英

Grails Spring Security REST + LDAP

[英]Grails Spring Security REST + LDAP

我試圖在Grails中設置Spring Security,使用令牌(通過Spring Security REST插件)進行身份驗證並對LDAP進行授權。 我找到了幾個例子(我現在有大約20個瀏覽器標簽打開),但沒有一個回答整個問題。 大多數示例是Grails + REST Security或Grails + LDAP Security,但沒有Grails + REST + LDAP的示例。

我的問題是,當我需要它來查看LDAP時,應用程序會嘗試在數據庫中查找用戶和角色。

我發現解決方案是進入resources.groovy並將userDetailsS​​ervice bean配置為使用LDAP。唯一的“先決條件”是您必須已經為LDAP服務器配置了正確的LDAP。 我在這里找到了這個解決方案: http//swordsystems.com/2011/12/21/spring-security-cas-ldap/ 並且只采取了以下一塊。

 // Place your Spring DSL code here import grails.plugin.springsecurity.SpringSecurityUtils beans = { def config = SpringSecurityUtils.securityConfig if (config.ldap.context.server) { SpringSecurityUtils.loadSecondaryConfig 'DefaultLdapSecurityConfig' config = SpringSecurityUtils.securityConfig initialDirContextFactory(org.springframework.security.ldap.DefaultSpringSecurityContextSource, config.ldap.context.server){ userDn = config.ldap.context.managerDn password = config.ldap.context.managerPassword } ldapUserSearch(org.springframework.security.ldap.search.FilterBasedLdapUserSearch, config.ldap.search.base, config.ldap.search.filter, initialDirContextFactory){ } ldapAuthoritiesPopulator(org.springframework.security.ldap.userdetails.DefaultLdapAuthoritiesPopulator, initialDirContextFactory, config.ldap.authorities.groupSearchBase){ groupRoleAttribute = config.ldap.authorities.groupRoleAttribute groupSearchFilter = config.ldap.authorities.groupSearchFilter searchSubtree = config.ldap.authorities.searchSubtree rolePrefix = "ROLE_" convertToUpperCase = config.ldap.mapper.convertToUpperCase ignorePartialResultException = config.ldap.authorities.ignorePartialResultException } userDetailsService(org.springframework.security.ldap.userdetails.LdapUserDetailsService, ldapUserSearch, ldapAuthoritiesPopulator){ } } } 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM