引入jar包
编写核心配置类org.apache.shiro shiro-spring-boot-web-starter 1.7.1
//Filter工厂,设置对应的过滤条件和跳转条件
@Bean(name="shiroFilterFactoryBean")
public ShiroFilterFactoryBean shiroFilterFactoryBean(@Qualifier("getDefaultWebSecurityManager") DefaultWebSecurityManager defaultWebSecurityManager){
ShiroFilterFactoryBean shiroFilterFactoryBean = new ShiroFilterFactoryBean();
shiroFilterFactoryBean.setSecurityManager(defaultWebSecurityManager);
Map map=new HashMap<>();
map.put("/select
@Bean
public DefaultWebSessionManager sessionManager(){
DefaultWebSessionManager defaultWebSessionManager=new DefaultWebSessionManager();
defaultWebSessionManager.setSessionIdUrlRewritingEnabled(false);
return defaultWebSessionManager;
}
编写自定义realm
public class UserRealm extends AuthorizingRealm {
@Autowired
private UserService userService;、
@Override
protected AuthorizationInfo doGetAuthorizationInfo(PrincipalCollection principalCollection) {
return null;
}
@Override
protected AuthenticationInfo doGetAuthenticationInfo(AuthenticationToken authenticationToken) throws AuthenticationException {
UsernamePasswordToken principal = (UsernamePasswordToken) authenticationToken;
String username = principal.getUsername();
User user = userService.selectByName(username);
if(user==null){
return null;
}else{
SimpleAuthenticationInfo simpleAuthenticationInfo = new SimpleAuthenticationInfo(user, user.getPassword(), "");
Subject subject= SecurityUtils.getSubject();
subject.getSession().setAttribute("user",user);
return simpleAuthenticationInfo;
}
}
}
docker run -it -p 8888:80 --name nginx
-v /home/nginx/conf/nginx.conf:/etc/nginx/nginx.conf
-v /home/nginx/conf.d/default.conf:/etc/nginx/conf.d/default.d
-v /home/nginx/html:/usr/share/nginx/html
-v /home/nginx/logs:/var/log/nginx -d nginx



