问题
需要给AWS API Gateway配置WAF。
AWS WAF设置
打开AWS WAF首页,开始创建和配置WAF,如下图:
设置web acl名称,然后开始添加aws相关资源,如下图:
选择资源类型,但是,我这里出现如下错误:
The security token included in the request is expired
如下图:
这个问题多点击几次右边刷新按钮就出来,具体如下图:
然后,继续下一步,如下图:
接下来,开始添加一些AWS自带的规则和规则组,如下图:
开始编辑机器人规则组策略,这个机器人规则组策略是收费的,需要注意一下,这里我们编辑一下这个机器人规则策略,保证移动端访问系统不受影响,下面开始编辑机器人规则组策略,如下图:
设置许可移动端,能够正常访问我们的系统接口,如下图:
如果你的API Gateway前面还有CDN的话,还需要配置UserAgent
转发给API Gateway。保存后,然后把下面免费的规则组,全部添加即可。如下图:
然后审核一下,没问题的话就下一步,如下图:
然后,设置一下规则组之间的优先级,如下图:
接下来,配置一下监控指标,如下图:
最后审计一下,如下图:
点击创建web ACL后,等待一段时间即可。创建成功如下图:
由于我们在配置过程已经指定好了api gateway,所以,这个waf配置创建成功后,会自动绑定在指定的api gateway上面。完成上面创建之后,最好去api gateway那边重新部署一下。
总结
这样就完成了在API Gateway中设置WAF过程。
参考
- 在 API Gateway 中使用 AWS WAF 保护 REST API
- 设置 AWS WAF 及其组件
- 机器人规则策略