同步操作将从 CV大神/rsa-encrypt-body-spring-boot 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
rsa-encrypt-body-spring-boot
Spring Boot接口加密,可以对返回值、参数值通过注解的方式自动加解密
。
Apache Maven
<dependency>
<groupId>cn.shuibo</groupId>
<artifactId>rsa-encrypt-body-spring-boot</artifactId>
<version>1.0.1.RELEASE</version>
</dependency>
Gradle Groovy DSL
implementation 'cn.shuibo:rsa-encrypt-body-spring-boot:1.0.1.RELEASE'
Gradle Kotlin DSL、Scala SBT、Apache Ivy、Groovy Grape、Leiningen、Apache Buildr、Maven Central Badge、PURL、Bazel方式请阅读Spring Boot接口RSA自动加解密
<dependency>
<groupId>cn.shuibo</groupId>
<artifactId>rsa-encrypt-body-spring-boot</artifactId>
<version>1.0.1.RELEASE</version>
</dependency>
@SpringBootApplication
@EnableSecurity
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
rsa:
encrypt:
open: true # 是否开启加密 true or false
showLog: true # 是否打印加解密log true or false
publicKey: # RSA公钥
privateKey: # RSA私钥
@Encrypt
@GetMapping("/encryption")
public TestBean encryption(){
TestBean testBean = new TestBean();
testBean.setName("shuibo.cn");
testBean.setAge(18);
return testBean;
}
@Decrypt
@PostMapping("/decryption")
public String Decryption(@RequestBody TestBean testBean){
return testBean.toString();
}
RequestBodyAdvice,针对所有以@RequestBody的参数,在读取请求body之前或者在body转换成对象之前可以做相应的增强。 我们处理了有参数和没有参数的情况,打印出请求类、方法、请求参数。注意:这里要加上@ControllerAdvice请求才能增强。
ResponseBodyAdvice 接口是在 Controller 执行 return 之后,在 response 返回给客户端之前,执行的对 response 的一些处理, 可以实现对 response 数据的一些统一封装或者加密等操作。 1: supports —— 判断是否要执行beforeBodyWrite方法,true为执行,false不执行 —— 通过supports方法,我们可以选择哪些类或哪些方法要对response进行处理,其余的则不处理。 2: beforeBodyWrite —— 对 response 处理的具体执行方法。
解释:@RestControllerAdvice(“com.zqsign.app.privatearbitrate.controller.remote”): 表示com.zqsign.app.privatearbitrate.controller.remote此包下的所有响应对象都会经过此拦截器,并对响应体加上签名。
JsonSerializer序列化自定义注解,实现字段内容的脱敏
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。