[有意思的代码] rsa-encrypt-body-spring-boot: Spring Boot 接口请求参数自动加解密

[](#1%E4%BB%8B%E7%BB%8D)1.介绍

rsa-encrypt-body-spring-boot
Spring Boot接口加密,可以对返回值、参数值通过注解的方式自动加解密 。

[](#2%E4%BD%BF%E7%94%A8%E6%96%B9%E6%B3%95)2.使用方法

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 DSLScala SBTApache IvyGroovy GrapeLeiningenApache BuildrMaven Central BadgePURLBazel方式请阅读Spring Boot接口RSA自动加解密

  • 以Maven为例,在pom.xml中引入依赖

<dependency>
<groupId>cn.shuibo</groupId>
<artifactId>rsa-encrypt-body-spring-boot</artifactId>
<version>1.0.1.RELEASE</version>
</dependency>

  • 启动类Application中添加@EnableSecurity注解

@SpringBootApplication
@EnableSecurity
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}

  • 在application.yml或者application.properties中添加RSA公钥及私钥

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();
}

[](#3about-author)3.About author

[](#%E7%A0%81%E5%86%9C%E7%95%8C%E9%A6%96%E5%AE%B6%E4%BA%92%E5%A8%B1%E8%87%AA%E5%AA%92%E4%BD%93%E5%BC%80%E5%BF%83%E7%A0%81%E5%86%9C)码农界首家互娱自媒体「开心码农」

码农届首家互娱自媒体

[](#%E5%BC%80%E5%BF%83%E7%A0%81%E5%86%9C%E5%92%8C%E6%88%90%E5%8D%83%E4%B8%8A%E7%99%BE%E4%B8%87%E4%B8%AA%E7%A8%8B%E5%BA%8F%E7%8C%BF%E4%B8%80%E8%B5%B7996)「开心码农」和成千上百万个程序猿一起996!


原网址: 访问
创建于: 2021-03-03 11:26:57
目录: default
标签: 无

请先后发表评论
  • 最新评论
  • 总共0条评论