【发布时间】:2018-12-27 19:38:24
【问题描述】:
我有一些网址(截至目前为止),我想允许每个用户使用,例如注册和登录网址。我只想在注册后排除任何 url 路径并保护或限制任何其他 url。
请参考以下代码:
package com.travelplanner.rest.config;
//COPY
import javax.sql.DataSource;
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.config.annotation.web.builders.WebSecurity;
import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
import org.springframework.security.core.userdetails.User;
import org.springframework.security.core.userdetails.User.UserBuilder;
import org.springframework.security.provisioning.JdbcUserDetailsManager;
import org.springframework.security.provisioning.UserDetailsManager;
@Configuration
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {
@Autowired
private DataSource securityDataSource;
@Bean
public UserDetailsManager userDetailsManager() {
JdbcUserDetailsManager jdbcUserDetailsManager = new JdbcUserDetailsManager();
jdbcUserDetailsManager.setDataSource(securityDataSource);
return jdbcUserDetailsManager;
}
@Override
protected void configure(AuthenticationManagerBuilder auth) throws Exception {
auth.jdbcAuthentication().dataSource(securityDataSource);
}
@Override
protected void configure(HttpSecurity http) throws Exception {
http.cors().and().httpBasic().and().csrf().disable()
.authorizeRequests().antMatchers("/register/**").permitAll();
}
}
它是谷歌应用引擎中的一个 spring mvc rest。我已经使用了上面的 sn-p,它甚至对 antmatchers 都表示未经授权。请帮忙!提前致谢。
【问题讨论】:
-
@JaiDixit 我已经更新了上面的代码。我只希望 /register/** 被忽略并得到保护。我已经尝试过 ("/register/**") 但它不起作用。
-
请求是 localhost8080/api/register/user
-
所以你的蚂蚁匹配器应该配置为 .antMatchers("/api/register/**")
标签: java spring spring-mvc spring-security spring-rest