APIShield (又名:API盾) 是一款集成各种 WebAPI 安全策略方案的轻量级 JAVA 框架,免于在设计复杂的系统中因 WebAPI 的安全问题而焦头烂额。并且它还提供了一整套前后端 WebAPI 响应或请求的解决方案,只需要简单配置您即可信手拈来。
APIShield 旨在以简单、优雅的方式完成系统接口安全校验或加解密部分,以最常用的MD5摘要签名校验为例,您只需要将注解放在对应方法或类上即可使用。
下面是一个最基本的示例:
// SpringBoot 示例
@RestController
@RequestMapping("/api")
@ApiShieldUserAgent(value = {UA.DEV_WECHAT}, forbids = {UA.DEV_MOBILE})
public class ApiController {
@GetMapping("/queryStu")
@ApiShieldCheckTimestamp
@ApiShieldDigestSignature
public String queryStudent(Student stu){
return "success";
}
}
# 微信PC端请求接口-QueryString携带Sign 成功示例
> curl http://127.0.0.1/api/queryStu?name=张三&age=18&apishield-ts=1670945512652&apishield-sign=99d35676c36acac696f0a424dcf34ca1
success