业务相关工具
captcha
验证码仓库,用于生成验证码
easycode
代码生成器,快速生成api代码
middleware
中间价仓库,用于存放gin中间件
jjwt
token工具,解析和生成token
mail
邮件服务,用于发送邮件
oauth
第三方登录工具
rabbitmq
消息队列,配合邮件服务给用户发送验证码
rbac
使用casbin实现权限控制,基于角色的权限控制
upload
文件上传
rbac
权限校验
用户登录时,
- 判断当前接口是否需要校验权限。如果是没有匹配接口,默认为不需要权限。如果是匿名接口,则不需要权限。
- 查询用户角色
- 校验接口所需的角色,如果用户角色包含接口所需角色,则校验通过,否则校验失败。
- 放行
判断角色拥有哪些资源好 or 判断资源需要哪些角色
判断角色拥有哪些资源(Role-Based Access Control,RBAC):
RBAC
是一种常见的权限管理模型,它将权限授予角色,然后将角色授予用户。每个角色都拥有一组资源的权限。在这种方法中,首先定义不同的角色,并为每个角色分配特定的资源权限。然后,将用户分配到相应的角色上。当用户访问某个资源时,系统根据用户所属角色的权限来判断是否允许访问。
判断资源需要哪些角色(Resource-Based Access Control):
RACB 是一种基于资源的权限管理模型,它将权限直接授予资源,而不是角色。在这种方法中,首先定义不同的资源,并为每个资源指定可以访问它的角色列表。当用户访问某个资源时,系统会检查用户所属的角色是否在该资源的访问控制列表中,如果在则允许访问。