【发布时间】:2020-10-08 03:01:08
【问题描述】:
我正在使用 Java + SpringBoot Security 对我的 Web 应用程序进行自动化。 贝娄正在工作配置,没有索赔)
我的问题:
- 我可以使用这种方式连接到 AD 以获取用户的 AD 属性(例如 sAMAccountName、邮件)吗?
- 可以通过 AD 组设置访问权限吗?
如果我正确理解 AuthenticationManagerBuilder 只是连接到 AD。
@Configuration
class WebSecurityConfig extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
http
.authorizeRequests()
.antMatchers("/home", "/logout/**","/logout-success","/login/**").permitAll()
.anyRequest()
.authenticated()
.and()
.formLogin()
.and()
.logout()
.permitAll();
}
@Autowired
public void configureGlobal(AuthenticationManagerBuilder authBuilder) throws Exception {
authBuilder
.ldapAuthentication()
.userSearchFilter("(sAMAccountName={0})")
.userSearchBase("OU=Active,OU=Users,OU=nsk,DC=regions,DC=office,DC=ru")
.groupSearchBase("OU=Groups,OU=nsk,DC=regions,DC=office,DC=ru")
.groupSearchFilter("member={0}")
.contextSource()
.url("ldap://regions.office.ru:389")
.managerDn("CN=ldap_user_ro,OU=Service,OU=Users,OU=nsk,DC=regions,DC=office,DC=ru")
.managerPassword("passw");
}
}
【问题讨论】:
标签: java spring-security active-directory