Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/security/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用spring security核心LDAP插件在grails中实现LDAP身份验证?_Security_Grails_Ldap - Fatal编程技术网

使用spring security核心LDAP插件在grails中实现LDAP身份验证?

使用spring security核心LDAP插件在grails中实现LDAP身份验证?,security,grails,ldap,Security,Grails,Ldap,我目前正在考虑在Grails中创建一个应用程序,我已经创建了该应用程序并安装了以下两个插件: http://grails.org/plugin/spring-security-core 然后,我继续运行以下命令以获得security core设置: grails s2-quickstart com.smstool User Role 然后创建了我需要的所有必要的控制器、视图和模型。然后,我继续使用以下选项更新config.groovy文件: grails.plugins.springsecu

我目前正在考虑在Grails中创建一个应用程序,我已经创建了该应用程序并安装了以下两个插件:

http://grails.org/plugin/spring-security-core

然后,我继续运行以下命令以获得security core设置:

grails s2-quickstart com.smstool User Role
然后创建了我需要的所有必要的控制器、视图和模型。然后,我继续使用以下选项更新config.groovy文件:

grails.plugins.springsecurity.ldap.authorities.groupSearchBase = 'DC=MYLOCATION, DC=COM'
grails.plugins.springsecurity.ldap.authorities.retrieveDatabaseRoles = false
grails.plugins.springsecurity.ldap.authorities.ignorePartialResultException = true // typically needed for Active Directory
grails.plugins.springsecurity.ldap.search.base = 'DC=MYLOCATION, DC=COM'
grails.plugins.springsecurity.ldap.search.filter="sAMAccountName={0}" // for Active Directory you need this
grails.plugins.springsecurity.ldap.search.searchSubtree = true
grails.plugins.springsecurity.ldap.auth.hideUserNotFoundExceptions = false
grails.plugins.springsecurity.ldap.search.attributesToReturn = ['mail', 'displayName'] // extra attributes you want returned; see below for custom classes that access this data
grails.plugins.springsecurity.providerNames = ['ldapAuthProvider', 'anonymousAuthenticationProvider'] // specify this when you want to skip attempting to load from db and only use LDAP

// role-specific LDAP config 
grails.plugins.springsecurity.ldap.useRememberMe = false 
grails.plugins.springsecurity.ldap.authorities.retrieveGroupRoles = true 
grails.plugins.springsecurity.ldap.authorities.groupSearchBase = 'DC=MYLOCATION, DC=COM'
然后,我运行应用程序并转到在运行第一个命令(s2 quickstart)时创建的登录页面,但是,当我尝试输入LDAP详细信息时,我没有收到错误,但它表示用户名不存在

我认为这可能是因为需要进行进一步的配置才能使此LDAP功能正常工作,并且用户输入的详细信息没有正确传递,而且我对Grails是新手:-)

我想我可能需要做一些事情,比如创建一个“UserDetailsContextMapper”,但是我不知道如何做,我已经查看了下面的链接,但似乎无法理解我需要做什么:

有没有人可以帮助我理解上面的链接,或者知道我应该采取哪些步骤来正确地对LDAP进行身份验证


提前感谢:-)

也许我的存根项目能帮上忙

您是否设法解决了问题?我遇到了相同的问题,请让我知道您是如何解决问题的我尝试了您的项目,但仍然遇到相同的问题“抱歉,我们无法找到具有该用户名和密码的用户。”问题。这是我的日志详细信息。如果我遗漏了什么,请告诉我