我现在已经开始反对这个问题几天了,而且我有一点春天安全的菜鸟。在他们的教程之后将Auth0实现到系统中时,我得到了一些意想不到的行为。在向api发出请求时,如果我有配置参数
auth0.defaultAuth0ApiSecurityEnabled = false
然后当我执行OPTIONS预ping时,我得到了一个401未经授权的代码。这对我来说没有多大意义,因为OPTIONS请求没有注入令牌。如果我将此标志切换为true,那么对我来说更麻烦的事情是OPTIONS preping返回200然后get请求到我的端点返回404.这似乎有希望,但文档明确说明应该设置auth0.defaultAuth0ApiSecurityEnabled配置为假。
我也根据他们的规范设置了配置。
@Configuration
@EnableWebSecurity(debug = true)
@EnableGlobalMethodSecurity(prePostEnabled = true)
@Order(SecurityProperties.ACCESS_OVERRIDE_ORDER)
public class WebConfig extends Auth0SecurityConfig {
/**
* Our API Configuration - for Profile CRUD operations
*
* Here we choose not to bother using the `auth0.securedRoute` property configuration
* and instead ensure any unlisted endpoint in our config is secured by default
*/
@Override
protected void authorizeRequests(final HttpSecurity http) throws Exception {
http.authorizeRequests()
.antMatchers("/api).authenticated()
.antMatchers("/**").permitAll();
}
}
我故意设置我试图点击的端点也是非安全的,这在accessibily中有0个不同。任何人都可以了解一下他们认为我在Spring安全中可能出错的地方吗?