authorizeRequests 里面 mvcMatchers 设置问题

来源:7-4 数据库和实体类的 RBAC 改造

开辟者

2022-06-16

.authorizeRequests(authorizeRequests -> authorizeRequests
                .mvcMatchers("/api/users/list").hasRole("api_users_list") // 用户列表
                .mvcMatchers("/api/users/add").hasRole("api_users_add") // 用户增加
                .mvcMatchers("/api/users/edit").hasRole("api_users_edit") // 用户修改
                .mvcMatchers("/api/users/del").hasRole("api_users_del") // 用户删除
                .mvcMatchers("/api/users/verify").hasRole("api_users_verify") // 用户审核

                .mvcMatchers("/api/item/list").hasRole("api_item_list") // 产品列表
                .mvcMatchers("/api/item/add").hasRole("api_item_add") // 产品增加
                .mvcMatchers("/api/item/edit").hasRole("api_item_edit") // 产品修改
                .mvcMatchers("/api/item/del").hasRole("api_item_del") // 产品删除
                .mvcMatchers("/api/item/verify").hasRole("api_item_verify") // 产品审核

				...

                .mvcMatchers("/api/**").authenticated()
                .anyRequest().denyAll())

上面哪些东西不应该是数据库里面读取吗?如果有几百个链接,都要这么设置吗?

写回答

2回答

慕码人6433310

2022-10-21

额。。。你忘了@EnableGlobalMethodSecurity(prePostEnabled = true)这个注解了嘛,用了这个就可以用@PreAuthorize、@PreFilter,方法后的@PostAuthorize和@PostFilter这四个注解了嘛,开发的时候写完直接往方法上加效果一样还方便。然后你上面那种只给控制器级进行控制,除了规定的控制器以外的全部打回就行

0
0

接灰的电子产品

2022-07-10

这个东西改成在数据库中读取也不难啊

0
0

Spring Security+OAuth2 精讲,打造企业级认证与授权

一站式掌握主流安全框架与行业解决方案,从容应对各种安全难题。

1043 学习 · 316 问题

查看课程