Shiro高级及与项目的认证授权(一)

2023-09-25 20:30:24 浏览数 (3)

1 Shiro在SpringBoot工程的应用

Apache Shiro是一个功能强大、灵活的,开源的安全框架。它可以干净利落地处理身份验证、授权、企业会话管理和加密。越来越多的企业使用Shiro作为项目的安全框架,保证项目的平稳运行。

在之前的讲解中只是单独的使用shiro,方便学员对shiro有一个直观且清晰的认知,我们今天就来看一下shiro在springBoot工程中如何使用以及其他特性

1.1 案例说明

使用springBoot构建应用程序,整合shiro框架完成用户认证与授权。

1.1.1 数据库表

1.1.2 基本工程结构

导入资料中准备的基本工程代码,此工程中实现了基本用户角色权限的操作。我们只需要在此工程中添加Shiro相关的操作代码即可

1.2 整合Shiro

1.2.1 spring和shiro的整合依赖

代码语言:javascript复制
<dependency>
    <groupId>org.apache.shiro</groupId>
    <artifactId>shiro-spring</artifactId>
    <version>1.3.2</version>
</dependency>
<dependency>
     <groupId>org.apache.shiro</groupId>
     <artifactId>shiro-core</artifactId>
     <version>1.3.2</version>
</dependency>

1.2.2 修改登录方法

认证:身份认证/登录,验证用户是不是拥有相应的身份。基于shiro的认证,shiro需要采集到用户登录数据使用subject的login方法进入realm完成认证工作。

代码语言:javascript复制
  @RequestMapping(value="/login")
    public String login(String username,String password) {
        try{
            Subject subject = SecurityUtils.getSubject();
            UsernamePasswordToken uptoken = new
UsernamePasswordToken(username,password);
            subject.login(uptoken);
            return "登录成功";
       }catch (Exception e) {
            return "用户名或密码错误";
       }
   }

0 人点赞