SpringSecurity框架:入门案例引入 [学习笔记]

Spring Security 简介

Spring Security 是Spring家族中的一个安全管理框架。相比较Shiro,提供了更丰富的功能,社区资源也比较丰富。

针对于前后端分离,是一套安全框架。

两大核心功能:

一般的web应用需要进行认证和授权

认证:验证当前访问系统是不是本系统用户,并且要确认具体是哪个用户

授权:经过认证后判断当前用户是否有权限进行某个操作

关于用户身份认证与授权——授权发生在身份认证之后

Spring Security 是用于解决认证与授权的框架。

spring:创建对象,管理对象

springMVC:接受请求,响应结果

mybatis:解决增删改查

Spring-vaditation:只检查参数有效性

入门案例

第一步:创建Maven项目。

第二步:添加依赖

第三步: 编写Controller层 HelloController.java

package com.simia.controller;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class HelloController {


    @RequestMapping("/hello")
    public String hello(){
        return "hello!";
    }
}

 添加spring security之前可以直接访问到Controller层

 添加之后需要登录请求才能访问到conreoller层  特点:有默认的用户名密码

 ①默认用户名和密码  User   密码是随机的,每次启动项目都会不同。

        Spring Security的依赖项中包括了Bcrypt算法的工具类,是非常优秀的密码加密工具,适用于对需要存储下来的密码进行加密处理。解不出来。

        就是:原文相同,密文不同,但是每个密文跟原文都可以匹配上。

        传输过程加密:加密,解密 

        MD5缺陷:简单密码在网上通过密文可以找出原文 所以需要考虑加盐才可以保证密码的安全性。

       

 密码会在控制台的日志中输出,比如下图:

 

②默认要求所有的请求都是必须先登录才允许访问

       

         在测试登陆时,在浏览器访问当前主机的任意网址都可以(包括不存在资源404),会自动跳转到登录页(由spring Security提供,默认的URL是:http://localhost:8080/login)的界面,登陆成功后,会自动跳转到此前访问的URL(跳转登录页之前的URL)。

          另外,还可以通过http://localhost:8080/logout退出登录。

   

局限性:

如果Spring Security 集成到项目中的话,用默认用户名密码肯定不符合项目实际需求,所以有些地方需要修改。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值