扫码阅读
手机扫码阅读

如何在 TienChin 项目中自定义权限表达式

44 2024-11-28

我们非常重视原创文章,为尊重知识产权并避免潜在的版权问题,我们在此提供文章的摘要供您初步了解。如果您想要查阅更为详尽的内容,访问作者的公众号页面获取完整文章。

查看原文:如何在 TienChin 项目中自定义权限表达式
文章来源:
江南一点雨
扫码关注公众号

松哥正在录制TienChin项目视频,该项目基于Spring Boot和Vue3技术栈,并将探讨多种技术。项目旨在创建一个完成率超过90%的项目,并邀请小伙伴们参与。有关项目的配套视频现已上线。

在之前的文章中,松哥介绍了Spring Security中的权限表达式。对于还未阅读的小伙伴们,建议先行了解。本文将基于之前的内容,讨论如何在权限中使用通配符。

首先回顾SpEL表达式的使用,在Spring Security中可利用注解如@PreAuthorize和@PostAuthorize来使用SpEL。这些表达式可以直接调用RootObject的方法,或者调用Spring容器中的其他对象的方法。通过前文的学习,读者应已经能够理解这些基础知识。

接着,文章讨论了如何自定义权限判断的表达式,而不采用第三方对象。这可以通过继承SecurityExpressionRoot类来实现,该类提供了一系列的权限方法,如hasAuthority、hasPermission等。通过创建一个自定义类继承自SecurityExpressionRoot,可以扩展RootObject对象,添加新的方法来实现自定义权限表达式。

最后,松哥展示了如何自定义ExpressionRoot。由于MethodSecurityExpressionRoot类不是公开的,不能直接继承,因此需要通过实现MethodSecurityExpressionOperations接口来扩展SecurityExpressionRoot。自定义类可以添加新的方法来判断用户是否具备某个权限,增强权限表达式的功能。

想要了解更多内容?

查看原文:如何在 TienChin 项目中自定义权限表达式
文章来源:
江南一点雨
扫码关注公众号