perf: 阿里云waf支持云产品接入方式应用的证书部署

This commit is contained in:
xiaojunnuo
2026-04-26 00:12:37 +08:00
parent 575415b93a
commit 2f7514a2e7
4 changed files with 602 additions and 260 deletions
+18 -1
View File
@@ -139,6 +139,23 @@ async onInstance() {}
#### 5.2 插件执行方法
1. 开始写代码之前,需要先研究应用的部署接口逻辑, 一般有两种
a 用户选择网站ID,给网站部署新证书
b 用户选择证书ID,只需要更新证书即可
无论哪一种都要保证多次执行都能针对同一个对象部署证书,出错后重新运行能够回归到正常状态
反例: 比如根据证书id=1进行更新,结果证书部署完成之后,证书id变成了2,那么再次运行插件,插件的输出参数仍然是1,就无法达到持续更更新证书的目的。
这部分逻辑每一步都需要明确的接口文档支撑,不能依赖于经验
2. 前置证书选择
a. 前置证书可以选择原始的certInfo类型,也有可能是上传到平台之后返回的证书id,比如阿里的CAS证书id,部署时要区分这两者
b. 如果接口需要上传后的证书id,那么部署时要先将证书上传,再部署
c. 如果接口需要原始的certInfo类型,那么直接使用certInfo部署证书
d. 当两者都支持时,判断用户选择的证书类型,再考虑优先上传再部署
3. 证书清理
a. 如果是先上传再部署的,那么在部署完成后,可能需要考虑清理证书
```typescript
// 插件执行方法
async execute(): Promise<void> {
@@ -165,7 +182,7 @@ async execute(): Promise<void> {
this.logger.info('授权id:', accessId);
// 具体的部署逻辑
// ...
}
```