Web 安全开发及架构设计

本文为我的《软件安全》课程课上分享内容,主要是软件设计的需求分析、概要设计部分,其中加入了一些安全考量和设计。背景是企业工厂设备管理和固定资产管理。项目包含设备管理、维修管理、保养管理、文档管理和用户管理等核心功能,角色包括管理员、技术员和工人。
阅读更多

Spring Security 简介、原理及使用

本文为《软件安全》课程上课分享内容,主要介绍Security框架的基本概念、结合代码分析原理、以及常见的使用场景。首先,概述了权限控制的基本概念,包括认证、授权、加密、防止CSRF攻击、记住我功能等。文章深入探讨了两种常见认证方法:Session和Bearer Token,并对其优缺点进行了比较。接着,介绍了Spring Security的核心概念,如身份验证、访问控制、过滤器链、密码加密和用户详情服务(UserDetailsService)。最后,通过实际代码示例展示了如何使用Spring Security实现身份鉴别、访问控制以及Session管理,还包括手工实现这些功能的对比,帮助读者更好地理解Spring Security的应用和实现细节。
阅读更多