SpringBoot集成shiro认证,实现Shiro认证的登录操作

本文介绍了如何在SpringBoot项目中集成Shiro进行用户登录认证。首先,详细列出了所需的Shiro相关依赖。接着,展示了如何重写Realm以连接数据库验证用户账号密码。然后,配置了SpringBoot的ShiroFilterFactoryBean以设置拦截规则。最后,演示了如何修改登录方法,利用Subject的login方法完成登录操作。
摘要由CSDN通过智能技术生成

下面开始使用Shiro实现带认证的登录操作

导入依赖

org.apache.shiro

shiro-core

1.3.2

org.apache.shiro

shiro-web

1.3.2

org.apache.shiro

shiro-spring

1.3.2

第一个demo

基本思路

用户输入的账号密码 和 数据库中存储的账号密码 比对

注意:shiro 默认不支持连接数据库 默认通过配置文件获取数据

所以我们要重写Realm中的方法,实现对数据库的连接

  1. 接收用户输入的账号密码,

  2. 要重写Realm中的方法,实现对数据库的连接和数据获取

  3. 写Springboot的配置类,创建并将重写的Realm设置放进去安全管理器, 将安全管理器 和Subject建立联系

  4. 将用户输入的账号密码给Subject

  5. 调用Subject的login方法完成登录

代码实现流程

重写Realm的代码

package com.macw.realm;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;

import com.macw.entity.Admin;

import com.macw.mapper.AdminMapper;

import org.apache.shiro.SecurityUtils;

import org.apache.shiro.authc.*;

import org.apache.shiro.realm.AuthenticatingRealm;

import org.apache.shiro.subject.Subject;

import org.slf4j.Logger;

import org.slf4j.LoggerFactory;

import javax.annotation.Resource;

/**

  • @author maCw

  • @version 1.0

  • @date 2019/8/22 16:13

*/

public class MyRealm extends AuthenticatingRealm {

@Resource

private AdminMapper adminMapper;

  • 24
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值