一、背景、原理与解决思路
1、为什么要提高安全性(针对Web系统)
网络上对Web应用程序存在多种Web攻击手段,为了使系统稳定运行,必须有所防范
常见的Web攻击:XSS攻击、注入攻击、CSRF攻击、文件上传漏洞、DDos攻击、其它
2、应对方式
2个切入点:网络的架构、应用程序的设计
网络架构
内外网分离、硬件+软件、防火墙、网闸
实例
应用程序
信息加密、信息过滤、认证、授权、协议
信息加密:
单向散列加密:hash、MD5,不同长度加密成固定长度,只能加密,不能解密,所以是单向的
对称加密:使用密钥加密解密,加密解密使用同一个密钥
非对称加密:使用密钥加密解密,加密解密使用不同的密钥
认证(Authentication):证明身份
摘要认证、签名认证
授权(Authorization):你的身份有什么权利
授权模型:资源、权限、角色、用户
协议:
HTTPS(HTTP over Secure Socket Layer)就是通信过程加密的HTTP
OAuths:解决分布式环境开放和消费第三方接口的授权问题
3、安全性框架
有一些成熟的第三方安全性框架,我们可以直接使用,如
Spring Security、Apache Shiro
4、系统安全性实现思路
了解原理(加密算法和机制、认证和授权),框架应用(Apache Shiro)