如何忽略 Spring 除了模式之外的所有事物的安全配置
How to ignore Spring Security config for every thing except a pattern
我有一个配置为 spring 启动应用程序的休息网络服务。
我剩下的所有 urls 都有一个基本路径“/api/...”。
我还在我的应用程序中提供静态内容。
我只需要为 Web 服务配置安全性,即以“/api/...”开头但给其他静态内容 w/o 应用安全性的 URL。
我只看到过我们通过以下方式过滤一些 url 模式的示例:
@Override
public void configure(WebSecurity web) throws Exception {
web.ignoring().antMatchers("/resources/*");
}
但并非如此......
你可以用 regexMatcher 代替 antMatcher,它可以是一个否定模式
@Override
public void configure(WebSecurity web) throws Exception {
web.ignoring().regexMatchers(XXXXX);
}
回答您最后的评论,如果您使用的是最新的 spring 框架和 spring 安全性,请根据配置标准在下面定义 class 和安全配置。
package org.springframework.security.samples.config;
import org.springframework.security.web.context.AbstractSecurityWebApplicationInitializer;
public class MessageSecurityWebApplicationInitializer extends AbstractSecurityWebApplicationInitializer {
}
另外,如果您仍然觉得 spring 安全入门很困难,请查看下面 URL。
使用HttpSecurity
的antMatcher
方法 class:
@Configuration
@EnableWebSecurity
public class MySecurityConfig extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
http.antMatcher("/api/**");
// add security constraints for /api/... here
}
/* rest of config */
}
我有一个配置为 spring 启动应用程序的休息网络服务。 我剩下的所有 urls 都有一个基本路径“/api/...”。 我还在我的应用程序中提供静态内容。 我只需要为 Web 服务配置安全性,即以“/api/...”开头但给其他静态内容 w/o 应用安全性的 URL。
我只看到过我们通过以下方式过滤一些 url 模式的示例:
@Override
public void configure(WebSecurity web) throws Exception {
web.ignoring().antMatchers("/resources/*");
}
但并非如此......
你可以用 regexMatcher 代替 antMatcher,它可以是一个否定模式
@Override
public void configure(WebSecurity web) throws Exception {
web.ignoring().regexMatchers(XXXXX);
}
回答您最后的评论,如果您使用的是最新的 spring 框架和 spring 安全性,请根据配置标准在下面定义 class 和安全配置。
package org.springframework.security.samples.config;
import org.springframework.security.web.context.AbstractSecurityWebApplicationInitializer;
public class MessageSecurityWebApplicationInitializer extends AbstractSecurityWebApplicationInitializer {
}
另外,如果您仍然觉得 spring 安全入门很困难,请查看下面 URL。
使用HttpSecurity
的antMatcher
方法 class:
@Configuration
@EnableWebSecurity
public class MySecurityConfig extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
http.antMatcher("/api/**");
// add security constraints for /api/... here
}
/* rest of config */
}