3.实现授权的动态配置
1.总结:昨天主要是实现了登录的动态配置权限,在我们的配置类中注册一个Hierarchy的bean,自定义FilterInvocationSecurityMetadataSource和AccessDecisionManager类
,首先是继承FilterInvocationSecurityMetadataSource的getAttributes()根据请求URL获取它所需的请求,再在自己的数据库中通过调用menu_role的接口获取对应的
所有URL,判断请求的URL是否在自己的URL集合中;如果存在就将用户的角色存储在securityConfig中;然后是继承AccessDecisionManager的decide方法,判断
用户是否具有登录角色,是否是一个UsernamePasswordAuthenticationToken对象,验证是否完成登录,或者判断是够拥有访问权限
2.反思:在进行这个项目的时候注册Hierarchy应该可以实现角色继承,但是我配置了之后还是没有实现角色继承,还没找到原因,但是网上说这个Bean是默认注入
AccessDecisionManager中,再就是出现了rebuild project项目的时候SpringBootApplication注解失效,还没有找到好的方法进行解决
3.复盘:观看自己之前的博客,进行微调