shiro框架要点

一、shiro核心组件

==用户、角色、权限==

会给角色赋予权限,给用户赋予角色

  • 1、UsernamePasswordToken,Shiro用来封装用户登录信息,使用用户的登录信息来创建令牌Token.
  • 2、SecurityManager,Shiro的核心部分,负责安全认证和授权。
  • Suject,Shiro的一个抽象概念,包含了用户信息。
  • 4、Realm,开发者自定义的模块,根据项目的需求,验证和授权的逻辑全部写在Realm中。
  • 5、AuthenticationInfo,用户的角色信息集合,认证时使用。
  • 6、Authorzationlnfo,角色的权限信息集合,授权时使用。
  • 7、DefaultWebSecurityDManager,安全管理器,开发者自定义的Realm 需要注入到DefaultwebSecurityDManager进行管理才能生效。
  • 8、ShiroFilterFactoryBean,过滤器工厂,Shiro的基本运行机制是开发者定制规则,Shiro 去执行,具体的执行操作就是由ShiroFilterFactoryBean创建的一个个 Filter对象来完成。I

二、shiro运行机制

image-20230712154237818

shiro的使用

编写认证和授权规则:

认证过滤器

  • anon:无需认证。authc:必须认证。

  • authcBasic:需要通过HTIPBasic认证。

  • user:不一定通过认证,只要曾经被Shiro记录即可,比如:记住我。

    授权过滤器

  • perms:必须拥有某个权限才能访问。role:必须拥有某个角色才能访问。port:请求的端口必须是指定值才可以。

  • rest:请求必须基于RESTful,POST、PUT、GET、DELETE。ssl:必须是安全的URL请求,协议HLIPS.