Spring安全性与Oauth一起公开特定路径

时间:2017-05-23 20:43:45

标签: java spring spring-boot oauth

在我正在开发的API中,几乎每条路径都应该受到oauth保护,只举几个例子。现在我设法使用addFilterBefore函数保护每个路径:

@Override
protected void configure(HttpSecurity http) throws Exception {
    http.antMatcher("/**")
            .addFilterBefore(zeroLeggedOAuthProviderProcessingFilter, UsernamePasswordAuthenticationFilter.class)
            .authorizeRequests().anyRequest().hasRole("OAUTH");
}

我想要做的是为每个人打开一些路径(例如/语言),同时锁定所有其他路径。

有人能告诉我这是怎么做到的吗?或者也许有人可以向我解释过滤器的概念?

1 个答案:

答案 0 :(得分:0)

这对我有用。在同一个类中@Override再次配置,如下所示:

@Override
public void configure(WebSecurity web) throws Exception {
    web.ignoring().antMatchers('/languages/**');
}

对于/ languages

下的任何端点,不再需要OAUTH