我正试图禁用Spring Security性以请求前端。我使用oauth2-auto-configuration作为一个依赖项,我还从Maven中删除了spring starter安全性。我还需要说,一切都是从邮递员工作。
@Configuration
@EnableWebSecurity(debug = true)
@Order(SecurityProperties.BASIC_AUTH_ORDER)
public class SecurityConfig extends WebSecurityConfigurerAdapter {
@Bean
public static PasswordEncoder passwordEncoder() {
return PasswordEncoderFactories.createDelegatingPasswordEncoder();
}
@Autowired
public UserDetailsService userDetailsService;
@Autowired
private PasswordEncoder passwordEncoder;
@Bean
public DaoAuthenticationProvider authenticationProvider() {
DaoAuthenticationProvider authenticationProvider = new DaoAuthenticationProvider();
authenticationProvider.setUserDetailsService(userDetailsService);
authenticationProvider.setPasswordEncoder(passwordEncoder());
return authenticationProvider;
}
@Override
protected void configure(AuthenticationManagerBuilder auth) throws Exception {
auth
.userDetailsService(userDetailsService)
.passwordEncoder(passwordEncoder);
}
@Override
protected void configure(HttpSecurity http) throws Exception {
http.csrf().disable()
.sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS)
.and().authorizeRequests()
.antMatchers("/","/**").permitAll()
.antMatchers(HttpMethod.OPTIONS, "/**").permitAll()
.and().httpBasic().disable();
}
@Override
public void configure(WebSecurity web) throws Exception {
web.ignoring().antMatchers(HttpMethod.OPTIONS, "/**");
}
@Override
@Bean
public AuthenticationManager authenticationManagerBean() throws Exception {
return super.authenticationManagerBean();
}
}
spring.data.mongodb.database=music-test-oauth2-2
security.oauth2.resource.id=oauth2_application
access_token.validity_period=3600
refresh_token.validity_period=10000
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework.security.oauth.boot</groupId>
<artifactId>spring-security-oauth2-autoconfigure</artifactId>
<version>2.0.0.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-mongodb</artifactId>
<version>2.0.0.RELEASE</version>
</dependency>
<dependency>
<groupId>com.googlecode.json-simple</groupId>
<artifactId>json-simple</artifactId>
<version>1.1.1</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.8.0</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.8.0</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-rest-hal-browser</artifactId>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.dataformat</groupId>
<artifactId>jackson-dataformat-xml</artifactId>
<version>2.9.5</version>
</dependency>
</dependencies>
CORS滤波器
@Bean
public WebMvcConfigurer corsConfigurer() {
return new WebMvcConfigurerAdapter() {
@Override
public void addCorsMappings(CorsRegistry registry) {
registry.addMapping("/**");
}
};
}
谢了。
下面是一个简单的CORF过滤器,您可以尝试:
@Component
@Order(Ordered.HIGHEST_PRECEDENCE)
public class CorsFilter implements Filter {
@Override
public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throws IOException, ServletException {
final HttpServletResponse response = (HttpServletResponse) res;
response.setHeader("Access-Control-Allow-Origin", "*");
response.setHeader("Access-Control-Allow-Methods", "POST, PUT, GET, OPTIONS, DELETE");
response.setHeader("Access-Control-Allow-Headers", "Authorization, Content-Type");
response.setHeader("Access-Control-Max-Age", "3600");
if ("OPTIONS".equalsIgnoreCase(((HttpServletRequest) req).getMethod())) {
response.setStatus(HttpServletResponse.SC_OK);
} else {
chain.doFilter(req, res);
}
}
@Override
public void destroy() {
}
@Override
public void init(FilterConfig config) throws ServletException {
}
}
也许您的请求头不正确,请尝试使用以下代码:
public obtainAccessToken(username: string, password: string): Promise<void> {
let params = new URLSearchParams();
params.append('username', username);
params.append('password', password);
params.append('grant_type','password');
params.append('client_id','fooClientIdPassword');
let headers = new Headers({'Content-type': 'application/x-www-form-urlencoded; charset=utf-8', 'Authorization': 'Basic '+btoa("fooClientIdPassword:secret")});
let options = new RequestOptions({ headers: headers });
return this.http.post(environment.apiEndpointAuth + 'user/login', params.toString(), options)
.toPromise().then(response => {
this.saveToken(response.json());
})
.catch(this.handleError);
}
我在Windows 10中使用的是gVim。这是最新版本(8.2),这就是问题所在。以前滚动轮从未移动过我的光标。Vim现在对我来说基本上毫无用处。当我用中间按钮(滚动轮)粘贴时,光标会移动。我在_vimrc中尝试了nmap、imap、vmap,但没有任何改变。如果有人救不了我,我会被困在记事本里。 如何关闭滚轮?请不要告诉我在Windows中做任何事情,只有vim。
我想在应用程序中禁用Spring Security性,并在application.yml文件中设置了属性security.basic.enable=false。 我使用spring-boot-actuator检查了/env,发现它加载正确:(第2行) 这是SecurityConfigUtaIon:
行动时刻 - 禁用未使用的EAP方法 我们的组织决定支持两种隧道式EAP方法(PEAP和EAP-TTLS)。 我们将禁用其他方法并将默认EAP方法设置为PEAP: 编辑位于FreeRADIUS配置目录下的eap.conf文件。 通过完全注释掉它们来禁用以下方法:md5,leap,gtc和mschapv2。 更改default_eap_type指令: default_eap_type = md5 更
问题内容: 我正在制作一个西蒙游戏,其中有四个四分之一圆,它们的类名均为“ colorButton”:红色,黄色,蓝色和绿色。 我希望这样做,以便在计算机旋转时,所有指向4个彩色圆圈的指针事件都被禁用,因此您无法单击它们。 在我的代码中,我使用: 但我收到此控制台错误: 我在这里做错什么了吗? 完整代码供参考: 问题答案: 错误的原因是getElementsByClassName返回了类似数组的对
我使用的是Go Daddy颁发的SSL证书。在我的Linux实例上,以下是软件细节:- Apache版本-Apache/2.4.16(亚马逊) OpenSSL版本-OpenSSL 1.0.1k-FIPS 8 2015年1月8日 mod_ssl版本-mod_ssl-2.4.2 注意:-我从RPM包安装Apache,以后我从RPM包安装mod_ssl和openssl。 1)问题是当我禁用SSLv3并从
我想暂时禁用整个应用程序的Spring Security性,但我总是被403禁止 删除控制器中的@PreAuthorize注释不会给出任何结果。未使用此注释标记的endpoint也会丢弃我 403 禁止 我不需要基本身份验证 我不需要身份验证 我的Spring Security配置:(/,/api/**,/**,**不工作,我总是得到403禁止) 我的一个控制者: