33 lines
1.5 KiB
Java
33 lines
1.5 KiB
Java
|
package com.spring.config;
|
||
|
|
||
|
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
|
||
|
import org.springframework.context.ApplicationEventPublisher;
|
||
|
import org.springframework.context.annotation.Bean;
|
||
|
import org.springframework.context.annotation.Configuration;
|
||
|
import org.springframework.security.authentication.AuthenticationEventPublisher;
|
||
|
import org.springframework.security.authentication.DefaultAuthenticationEventPublisher;
|
||
|
import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
|
||
|
import org.springframework.security.core.userdetails.User;
|
||
|
import org.springframework.security.core.userdetails.UserDetailsService;
|
||
|
import org.springframework.security.crypto.factory.PasswordEncoderFactories;
|
||
|
import org.springframework.security.provisioning.InMemoryUserDetailsManager;
|
||
|
|
||
|
@EnableWebSecurity
|
||
|
@Configuration
|
||
|
public class DefaultSecurityConfig {
|
||
|
@Bean
|
||
|
@ConditionalOnMissingBean(UserDetailsService.class)
|
||
|
InMemoryUserDetailsManager inMemoryUserDetailsManager() {
|
||
|
String generatedPassword = PasswordEncoderFactories.createDelegatingPasswordEncoder()
|
||
|
.encode("123456");
|
||
|
return new InMemoryUserDetailsManager(User.withUsername("user")
|
||
|
.password(generatedPassword).roles("USER").build());
|
||
|
}
|
||
|
|
||
|
@Bean
|
||
|
@ConditionalOnMissingBean(AuthenticationEventPublisher.class)
|
||
|
DefaultAuthenticationEventPublisher defaultAuthenticationEventPublisher(ApplicationEventPublisher delegate) {
|
||
|
return new DefaultAuthenticationEventPublisher(delegate);
|
||
|
}
|
||
|
|
||
|
}
|