当前位置: 首页 > 知识库问答 >
问题:

蚂蚁匹配器在Spring安全中不起作用

端木令
2023-03-14

我的应用程序中有两个URL:

  • /sa/abc(角色-abc应该可以访问它)

为此,我配置了:

http
    .sessionManagement()
        .sessionCreationPolicy(SessionCreationPolicy.STATELESS).and()
    .authorizeRequests()
        .antMatchers("/sa/**").authenticated()
        .antMatchers("/sa/abc/**").hasAnyAuthority("ABC")
        .antMatchers("/sa/practices/**").hasAnyAuthority("ADMIN")

我希望角色为ABC的用户不能访问/sa/practices/link1,但他可以。

我还想知道什么将发生的链接中没有提到的antMatcher。我的猜测是,无论角色如何,都可以毫无问题地访问它们。

我说得对吗?

共有1个答案

殷宾白
2023-03-14

秩序很重要。匹配的第一个蚂蚁模式决定了访问权限。所以在你的情况下:

http
    .sessionManagement()
        .sessionCreationPolicy(SessionCreationPolicy.STATELESS)
        .and()
    .authorizeRequests()
        .antMatchers("/sa/abc/**").hasAnyAuthority("ABC")
        .antMatchers("/sa/practices/**").hasAnyAuthority("ADMIN")
        .antMatchers("/sa/**").authenticated()

请注意,最不特定的路径是最后一条。

 类似资料:
  • 我正在我的应用程序中实现Spring Security,我想允许所有人使用,我尝试使用 我得到了, 这是我的配置课 这是我的yml配置: 有人可以在这里帮助我吗?

  • 4-1一面 50min 自我介绍 项目八股 架构设计 技术选型 实现细节 sso redis的持久化机制 数据类型 LRU的实现思路 数据一致性的问题 如果让你设计一个dubbo 该考虑什么 实现原理 clickhouse jvm gc机制 gc问题 gc调试 算法 topK问题 10亿数字找到最大的1000个

  • 8号突击面,一点八股都不问啊,面试官说不聊八股,全是情景题,然后深挖简历项目,给我难磕巴了,要寄了

  • securityconfig.java

  • 问题内容: 在定义顺序构建步骤时,我使用元素的属性。我最近看到了一个ant文件,其中的构建顺序是由目标内部的元素定义的。为了显示 : 与 两种方法之间是否有真正的区别?是其中之一更可取吗? 问题答案: 与这两种方法的主要区别在于目标是 始终 执行,而在目标只有在包含目标是执行。 一个澄清的例子: 在这里,将始终执行,而只有在定义时才会执行。 在此,仅当is即定义时才执行。

  • 代码似乎工作正常,除了管理部分-它不工作,但返回访问被拒绝异常。