官术网_书友最值得收藏!

Step 1—Spring Security configuration setup

We will now create the all-important Spring Security configuration class and make sure that the default filter chain for Spring Security is set up to secure all the resources:

@EnableWebSecurity
public class SpringSecurityConfig extends WebSecurityConfigurerAdapter {
@Autowired
private DataSource dataSource;
@Override
protected void configure(AuthenticationManagerBuilder auth) throws Exception {
auth.jdbcAuthentication().dataSource(dataSource)
.usersByUsernameQuery("select username, password, enabled"
+ " from users where username = ?")
.authoritiesByUsernameQuery("select username, authority "
+ "from authorities where username = ?")
.passwordEncoder(new BCryptPasswordEncoder());
}
@Override
protected void configure(HttpSecurity http) throws Exception {
http.authorizeRequests().anyRequest().hasAnyRole("ADMIN", "USER")
.and()
.httpBasic(); // Use Basic authentication
}
}

In Spring Security configuration, the first thing that we do is tell Spring Security that you will have to authenticate the user against a database by using a defined user query and checking the user's authority using the defined authority query.

We then set up the authentication mechanism to retrieve the user's credentials. Here we are using basic authentication as the mechanism to capture user credentials. Please note that the role names being used to check doesn't have the prefix ROLE_.

主站蜘蛛池模板: 阳春市| 广东省| 诏安县| 徐闻县| 凤翔县| 双牌县| 松滋市| 大兴区| 宝鸡市| 福建省| 山阳县| 凤凰县| 沙田区| 文登市| 鄂托克旗| 类乌齐县| 和平区| 泰顺县| 江门市| 铜山县| 隆回县| 乌鲁木齐县| 霞浦县| 仁寿县| 观塘区| 读书| 陵川县| 利辛县| 登封市| 娄底市| 庄浪县| 民丰县| 琼中| 中宁县| 安康市| 图木舒克市| 浑源县| 丰都县| 濮阳县| 莱阳市| 甘南县|