Spring Security - LDAP 身份验证和数据库授权

Posted

技术标签:

【中文标题】Spring Security - LDAP 身份验证和数据库授权【英文标题】:Spring Security - LDAP Authentication and DB Authorization 【发布时间】:2021-02-24 02:15:48 【问题描述】:

在我的 SpringBoot 应用程序中,我想再次验证我的用户 Enterprise AD,然后从应用程序特定的数据库表中授权(授予权限)。 例如:用户 A 从 LDAP 进行身份验证,然后从 DB 获取用户 A 的角色。

我能够设置 LDAP 身份验证并创建自定义 UserRepository 以从数据库中获取用户信息和角色。但是,我无法弄清楚如何将两者连接在一起并获得经过身份验证的 LDAP 用户的角色。

提前致谢。

【问题讨论】:

【参考方案1】:

我认为,如果您提供 LdapAuthoritiesPopulator bean(例如 UserDetailsServiceLdapAuthoritiesPopulator)并实现您的用户详细信息服务,您应该能够设置角色。

【讨论】:

谢谢。我能够成功地实现这一点。 @PanwarS87 你能分享一下工作示例吗?

以上是关于Spring Security - LDAP 身份验证和数据库授权的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 spring-security-core-ldap 插件在 grails 中实现 LDAP 身份验证?

使用 Spring security 2.0.3 的 LDAP 身份验证

使用 Spring Security 3 进行 LDAP 身份验证

使用 spring security ldap 禁用基本身份验证

使用 Spring Security 配置自定义 LDAP 身份验证提供程序

使用 Spring Boot/Spring Security 对 LDAP 进行证书身份验证