Skip to content
On this page

Anim 接口安全插件

Anim 提供了接口安全插件能力,使用 AES 对称加密与 RSA 非对称加密一起对接口进行加密保护,该能力需要配合后端共同使用。

image-20230406153032133

效果

通过接口的安全加密,请求参数与返回参数都无法被中间拦截窃取。

image-20230221164946247

快速使用

安装 Anim 插件

bash
npm install @ssv-lab/anim-plugin-api-encrypt --save

注意该 npm 包为 Coding Npm 的私有源,请先确定已经正确配置了 Coding Npm

  1. 点击开发者工具中的菜单栏:工具 --> 构建 npm
  2. 点击开发者工具中的菜单栏:设置 --> 项目设置 --> 勾选“使用 npm 模块”选项
  3. 构建完成后即可使用

初始化插件

js
// app.js
import Anim from '@ssv-lab/anim';
import CryptoPlugin from '@ssv-lab/anim-plugin-api-encrypt';

// 接口安全插件需要提前引入
Anim.use(CryptoPlugin, {
  // 公钥可以写在配置文件里
  publicKey: 'config.publicKey',
});

小程序使用 npm 包,请参考 小程序使用 npm 包

配置参数

options.publicKey

插件支持导入配置的公钥,因公钥并不是敏感数据可直接传入。

使用方法

该插件会利用拦截器机制重写 wx.request,当需要做加密的接口只需要传入 encrypt: true 就可以触发加密接口。

js
wx.request({
  url: '/api/hello_world',
  encrypt: !!isProd // 当 prod 环境时才加密
  method: 'POST',
  data: {}
})

注意事项

要注意以下几点:

  1. 加密库会占用一定的空间,请按需使用。
  2. 该能力仅支持对 POST 方法的 body 进行加密。
  3. 建议区分需要加密的环境和需要加密的接口

Released under the MIT License.