How to add LDAP login using Spring boot 3.x.x + Vaadin 24?

105 views Asked by At

WebSecurityConfig for LDAP login. I have used Spring boot 3.x.x and vaadin 24. I want use vaadin not controller but how to replace. In vaadin clcik on button then login form open using LDAP. How to do that?

package com.example.ldap_demo;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder;
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
import org.springframework.security.web.SecurityFilterChain;

@Configuration
public class WebSecurityConfig {

    @Bean
    public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception {
        http
                .authorizeRequests()
                .anyRequest().fullyAuthenticated()
                .and()
                .formLogin();

        return http.build();
    }

    @Autowired
    public void configure(AuthenticationManagerBuilder auth) throws Exception {
        auth
                .ldapAuthentication()
                .userDnPatterns("uid={0},ou=people")
                .groupSearchBase("ou=groups")
                .contextSource()
                .url("ldap://localhost:8389/dc=springframework,dc=org")
                .and()
                .passwordCompare()
                .passwordEncoder(new BCryptPasswordEncoder())
                .passwordAttribute("userPassword");
    }

}

and controller here

@RestController
@RequestMapping("/ldap")
public class HomeController {

    @GetMapping("/security")
    public String index() {
        return "Welcome to the home page!";
    }

}

please replce controller to vaadin.

0

There are 0 answers