• 26、Session知识大总结


    除了可以将用户信息通过 Cookie 存储在用户浏览器中,也可以利用 Session 存储在服务器端,存储在服 务器端的信息更加安全。

    Session 可以存储在服务器上的文件、数据库或者内存中。也可以将 Session 存储在 Redis 这种内存型数 据库中,效率会更高。

    使用 Session 维护用户登录状态的过程如下:

    1. 用户进行登录时,用户提交包含用户名和密码的表单,放入 HTTP 请求报文中;

    2. 服务器验证该用户名和密码,如果正确则把用户信息存储到 Redis 中,它在 Redis 中的 Key 称为 Session ID;

    3. 服务器返回的响应报文的 Set-Cookie 首部字段包含了这个 Session ID,客户端收到响应报文之后将该 Cookie 值存入浏览器中;

    4. 客户端之后对同一个服务器进行请求时会包含该 Cookie 值,服务器收到之后提取出 Session ID,从 Redis 中取出用户信息,继续之前的业务操作。

    注意:Session ID 的安全性问题,不能让它被恶意攻击者轻易获取,那么就不能产生一个容易被猜 到的 Session ID 值。此外,还需要经常重新生成 Session ID。在对安全性要求极高的场景下,例如 转账等操作,除了使用 Session 管理用户状态之外,还需要对用户进行重新验证,比如重新输入密 码,或者使用短信验证码等方式。

  • 相关阅读:
    Mybatis学习笔记2:第一个Mybatis使用实例
    Mybatis学习笔记1:Mybatis简介
    springcloud Eureka 服务注册与发现
    springcloud rest微服务案例
    springmvc返回json
    springboot 集成mybatisplus
    vue axios使用
    vue前后端交互方式
    day3
    D. Count the Arrays
  • 原文地址:https://www.cnblogs.com/crbhf/p/15114658.html
Copyright © 2020-2023  润新知