Spring全局加解密

该博客探讨了在Spring框架中实现全局加解密的需求。提供了两种方案:一是接口内部解密和加密,二是使用Filter过滤器进行统一处理。文章推荐使用Filter方案,因为它与业务代码解耦,能统一处理加解密,并支持路径匹配,适用于部分请求的加密。文中还附带了相关代码实现。
摘要由CSDN通过智能技术生成

需求:基于APP+后端服务(Spring框架),提供传输加密机制。

方案:采用AES加密,密钥的保护策略此处暂不讨论。这里主要讨论后端服务基于Spring下,如何方便的实现加解密。

方案一:APP端传输密文到后端接口,在每个具体的接口中实现参数解密,并在返回前加密结果。

优势:方案简单粗暴

劣势:当然这个方案是最LOW,也最繁琐的。如果是已有代码,涉及到大量接口修改,风险比较大。

方案二:在Filter过滤器实现,也是本文采用的。

基本思路:在Filter中可以获取到Request、Response对象,在Request中获取密文入参,解密再填充回去。在Response返回到客户端前,拦截明文再加密返回。

优势:1. 与业务代码解耦

   2. 统一处理,避免大量修改

   3. Filter支持路径匹配,可针对部分请求加解密。比如只针对APP传输加密,WEB请求不加密。

代码实现:(附件压缩包,上传了相关代码)

public class DecryptFilterProxy exten
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值