- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有将用于身份验证的 REST 服务。身份验证端点将类似于 /api/v.1/authentication
. API 版本是一个可以更改以反射(reflect)更新版本的变量。一个例子是 /api/v.2/authentication
.我喜欢有一个 antMatcher
可以处理这两种情况,所以我尝试了 .antMatchers(HttpMethod.POST,"**/authenticate").permitAll()
使用 **
匹配端点的任何开头,但这不起作用。完整设置如下。
@Override
protected void configure(HttpSecurity http) throws Exception {
http
.sessionManagement()
.sessionCreationPolicy(SessionCreationPolicy.STATELESS)
.and()
.csrf().disable()
.authorizeRequests()
.antMatchers(HttpMethod.POST, "**/authenticate").permitAll()
.antMatchers(HttpMethod.GET, "**/get-public-key").permitAll()
.and()
.authorizeRequests()
.antMatchers(HttpMethod.OPTIONS, "/**").permitAll()
.anyRequest().authenticated();
}
最佳答案
你必须使用绝对模式,见 AntPathMatcher
:
Note: a pattern and a path must both be absolute or must both be relative in order for the two to match. Therefore it is recommended that users of this implementation to sanitize patterns in order to prefix them with "/" as it makes sense in the context in which they're used.
@Override
protected void configure(HttpSecurity http) throws Exception {
http
.sessionManagement()
.sessionCreationPolicy(SessionCreationPolicy.STATELESS)
.and()
.csrf().disable()
.authorizeRequests()
.antMatchers(HttpMethod.POST, "/**/authenticate").permitAll()
.antMatchers(HttpMethod.GET, "/**/get-public-key").permitAll()
.antMatchers(HttpMethod.OPTIONS, "/**").permitAll()
.anyRequest().authenticated();
}
关于spring - 匹配任何路径开头的 antMatchers,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43704389/
这个问题已经有答案了: When to use Spring Security`s antMatcher()? (2 个回答) 已关闭 3 年前。 我正在学习 Spring Security,我从 h
只是想看看我是否在解释 answer to this question正确的方法。 如果我们只需要像这样保护一条路径: http.antMatcher("/api/**").authorizeRequ
我有两种配置: @订单(1) @Override protected void configure(HttpSecurity http) throws Exception { http.ant
我有将用于身份验证的 REST 服务。身份验证端点将类似于 /api/v.1/authentication . API 版本是一个可以更改以反射(reflect)更新版本的变量。一个例子是 /api/
我有一个我想提供给 antMatchers() 的路径列表.但是由于这个列表是动态的,我不能提供逗号分隔的路径。我目前正在遍历列表并将 eachPath 添加到 antMatcher() .有没有更好
我有我的自定义 Controller "/my-endpoint" 和具有以下配置的 spring 应用程序: @Override public void configure(Http
我正在学习spring-boot,对于我的大脑来说,为了接受一些东西,它需要对这些东西找到一个有意义的解释。有人能告诉我“antMatchers”中的“ant”是什么意思吗?像“ Ant ”这样的昆虫
我有一个基本的 Spring 应用程序,它具有各种端点和一个登录页面,通过配置 WebSecurityConfigurerAdapter 的 HttpSecurity 来定义。 我有一个服务,可以查找
我有以下 spring 安全配置片段: http .authorizeRequests() .antMatchers("/tokens").hasIpAddress("10.0.0.0/1
我有以下可用的 spring security java config rule(3.2.4 版): http.antMatcher("/lti1p/**") .addFilterBefore
我在内容管理系统上工作,它有五个 antMatchers,如下所示: http.authorizeRequests() .antMatchers("/", "/*.html").per
我知道有这个问题的主题,但我所做的配置是正确的,我将它与它正常工作的项目进行了比较。我想“解除”JWT 安全性的/login 端点,但 AuthenticationFilter 仍然在到达/login
这是我配置 spring security 的方式,在 Controller 中我获得 ROLE_ANONYMOUS 作为权限。看起来安全性并没有拦截请求并检查 JWT。如何配置antmatcher.
编辑: 我进一步深入研究了问题,发现即使使用单一配置,问题仍然存在。如果我使用单一配置并保留 http.antMatcher("/api/test/**") 网址不安全。删除 antMatcher 和
我想在 .antmatchers.access(): 中使用 AuthoritiesConstants.java 中的一些常量: .antMatchers("/first/**").access("h
编辑: 我进一步深入研究了问题,发现即使使用单一配置,问题仍然存在。如果我使用单一配置并保留 http.antMatcher("/api/test/**") 网址不安全。删除 antMatcher 和
我定义了一个自定义过滤器,我在 BasicAutenticationFilter 之后添加... 问题是,当我 ping 我的微服务时(在这种情况下通过 Rancher 的健康检查)它总是进入过滤器,
我试图忽略身份验证中的 url 我尝试了多种不同的模式,但 java 似乎无法识别它们。我的配置如下所示: @Override public void configure(WebSecurit
Spring security oauth 实现中有一个常见的做法是使用以下行来保护 oauth 端点: .requestMatchers().antMatchers("/login", "/oaut
我使用正确的凭据登录为“CHILD”,因此它与“USER”角色不同。当我将带有 token 的 get 请求发送到 http://localhost:8081/iam/accounts/users 时
我是一名优秀的程序员,十分优秀!