Spring 接口数据加解密—全局加解密篇
- 数据加密传输
- 加解密处理
- 自定义message-converters
- 小结
数据加密传输
企业级开发,是缺少不了数据的加密传输。如若不是,请自重。微信公共号的开发便提供AES加密处理,提高公共号的安全性。
加解密处理
(一) 请求数据加密算法加密生成字符串,按照MediaType=text/plain请求访问,服务器接收到字符串,并对字符串进行解密。响应结果加密生成字符串,并响应。
优势:随性。
劣势:仅能处理字符串,字符串明文也有被破解风险。且比如RC4算法加密后生成的字节转字符串是解密不了的。
(二) 自定义message-converters,消息转换器的调用完全依照请求的MediaType信息(本文详细介绍,目前restful主流,这里针对json串处理)。
优势:仅需实现接口,简单配置。
劣势:对同一类型的MediaType都进行加解密操作。
(三) 使用spring提供的接口RequestBodyAdvice和ResponseBodyAdvice对数据加解密。
优势:可指定接口加解密,无需配置。
劣势:需要升级spring4.2及以上。
(四) 使用拦截器,进行处理。
…
自定义message-converters
applicationContext.xml 中配置自定义的消息转换器:
<mvc:annotation-driven>
<mvc:message-converters register-defaults="true">
<!-- 配置自定义转换器com.Json