security - Grails Spring Security LDAP插件:使用LDAP进行身份验证,但仅允许存储在数据库中的用户登录

标签 security spring plugins grails ldap

我有一个映射到LDAP用户名的用户名表。我想做的是在数据库中有一个用户列表或仅包含用户名,并且只允许列表中的用户针对LDAP服务器进行身份验证。我希望能够针对LDAP服务器进行身份验证,但仅允许数据库中已启用并能够登录的那些用户名。我已经能够成功设置spring安全核心和LDAP,以便用户可以登录。如何仅验证使用Spring Security在数据库中启用以登录grails应用程序的用户?

最佳答案

您需要子类化Spring Security的LdapAuthenticationProvider。如果请求的登录名对ldap auth无效(又不在您的表中),则覆盖它返回null的authenticate方法。

下一步是按照Spring Security Core plugin docs中所述,将新的自定义AuthenticationProvider类添加到providerlist。

关于security - Grails Spring Security LDAP插件:使用LDAP进行身份验证,但仅允许存储在数据库中的用户登录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5499314/

相关文章:

java - 从另一个 POST 执行 TEMPORARY_REDIRECT 时添加 POST 数据

c++ - 用 C 或 C++ 实现插件系统

c# - 如何在 C# 中开发基于动态插件的功能

javascript - Webcrypto API/算法,用于加密、解密以及签名、验证

javascript - 带有 https url 的 jquery 和 post 方法安全性

asp.net-web-api - Asp.Net Web API : Protecting with a token?

security - OAuth2 中刷新 token 有什么好处

java - @UniqueConstraint 用于两列以上

java - 独立运行时 JMX 不适用于 spring boot 应用程序

java - 无法在 Netbeans 7.1 中安装 GWT4NB 插件