shiro的使用

  1. Shiro使用
    Shiro作为轻量级权限管理框架,现在使用shiro并不需要任何的配置文件,我们可以采用javabean的方式,如我们新建一个shiro的配置类需要在类上使用@Configuration注解。
    1.首先我们得定义生命周期相关得bean LifecycleBeanPostProcessor
    2.定义aop处理方法级得权限实现bean DefaultAdvisorAutoProxyCreator需要注意得是我们必须在什么周期相关得类加载完成才能开始给类实例化,因此我们需要添加@DependsOn(“lifecycleBeanPostProcessor”)注解来限定加载顺序,另外设置该类得属性ProxyTargetClass为true。
    3.自定义登录表单拦截器FormAuthenticationFilter可以设置登录参数比如UsernameParam,PasswordParam,RememberMeParam,LoginUrl,SuccessUrl等参数,自定义表单拦截器继承FormAuthenticationFilter ,我们可以重写isAccessAllowed等方法来处理重复登录、同一浏览器新用户登录等问题
    isAccessAllowed重写
    4.自定义密码匹配规则实现CredentialsMatcher接口,实现doCredentialsMatch方法
    doCredentialsMatch重写
    5.如果想使用redis作为session存储或者cache需要按照下面配置redis
    redis配置
    6.我们可以定义SimpleCookie用来控制web端cookie存储方式
    7.定义DefaultWebSessionManager使用刚刚配置的cookie和session处理类
    DefaultWebSessionManager
    8.自定义一个Realm继承AuthorizingRealm重写doGetAuthorizationInfo权限处理,AuthenticationInfo身份认证等方法。
    9.定义shiro核心bean DefaultWebSecurityManager
    DefaultWebSecurityManager
    10.设置过滤器bean ShiroFilterFactoryBean
    ShiroFilterFactoryBean
    2.shiro常见错误

org.apache.shiro.authc.pam.UnsupportedTokenException

org.apache.shiro.authc.UnknownAccountException

org.apache.shiro.authc.LockedAccountException

org.apache.shiro.authc.DisabledAccountException

org.apache.shiro.authc.ExcessiveAttemptsException

org.apache.shiro.authc.ConcurrentAccessException

org.apache.shiro.authc.AccountException

org.apache.shiro.authc.ExpiredCredentialsException

org.apache.shiro.authc.IncorrectCredentialsException

org.apache.shiro.authc.CredentialsException
org.apache.shiro.authc.AuthenticationException

org.apache.shiro.authz.HostUnauthorizedException
org.apache.shiro.authz.UnauthorizedException

org.apache.shiro.authz.UnauthenticatedException
org.apache.shiro.authz.AuthorizationException

org.apache.shiro.ShiroException

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值