未分類 4 2 月 2021 [转 Java 新人]请问, REST API 用什么方案做接口权限控制比较合适 [转 Java 新人]请问, REST API 用什么方案做接口权限控制比较合适 資深大佬 : jss 7 上手项目基于 spring boot 2.4 开发 大佬有話說 (23) 資深大佬 : hly9469 security 資深大佬 : iceneet security 或者 shiro 資深大佬 : jorneyr 我个人比较喜欢 Spring Security 。 資深大佬 : yisheyuanzhang 单体项目 spring security 直接用 session 就行了。 分布式 /微服务用 spring security oauth2.0写过一个单体的 demo https://gitee.com/zhaoydo/uaa-demo 資深大佬 : totoro52 小项目 shiro 够用 如果想要使用 spring 家族的就上 security 不过 shiro 的学习成本很低,一天就可以上手,security 很重,涉及的执行流程很多,小白慎入,光配置就很复杂。 資深大佬 : totoro52 还有 shiro 整合到 spring 会有一些坑,需要留意 資深大佬 : threeEggs123 前面加一层网关,在网关上面做。我们用的是 aws gateway 資深大佬 : Jrue0011 我也偏向 Spring Security,主要是和 Spring 集成比较好。。。 資深大佬 : totoro52 @Jrue0011 是的 当初项目采用他就是因为好集成 不过最强大的还是他的 oauth2 如果只做简单的授权我还是推荐 shiro 虽然我讨厌的 shiro 的配置 没有 security 来的优雅 資深大佬 : ccppgo @yisheyuanzhang 老哥你能把开源许可证加上吗 資深大佬 : wozhizui 选 Spring Security,集成 spring boot 比较好,最近也在做 spring 的企业项目,收藏下此帖子。 資深大佬 : zzzmh 如果业务不复杂就自己写咯,用 jwt token,数据库开一个权限字段,然后在拦截器里面做鉴权 資深大佬 : yisheyuanzhang @ccppgo 谢谢提醒,已加 資深大佬 : tianhei826 做个 cop 資深大佬 : echo1937 Spring Security,配置倒是不复杂,就是学习路线陡峭一点。 資深大佬 : cheng6563 Spring Security 太重了,就算花时间配好,过一过月就完全看不懂配了啥。有时候要改点功能也无从下手。建议直接自己写了,也不是个多复杂的组件。 資深大佬 : shaoyijiong 自己手写比较好 在网关拦截下 通过用户信息和接口地址来判断是否有权限访问该接口 資深大佬 : lvxiaomao 可以使用切面方式,自己写一个吧 資深大佬 : KuroNekoFan 切面做基础的用户验证,细粒度的就要侵入到业务代码里了 資深大佬 : liian2019 入门搞 shiro 資深大佬 : tomsun28 sureness https://github.com/tomsun28/sureness 資深大佬 : ys2016814 切面加注解实现 資深大佬 : hsluoyz 可以试试 Casbin Java 版本