访问控制
访问控制是 API 网关提供的安全组件之一,您可以配置基于请求来源 IP 、用户的账户ID (ACCOUNT ID) 或应用AK (APP KEY)的控制策略,决定是否允许调用指定的 API。
访问控制有两种类型,分别是允许和禁止:
允许:该类型访问控制只允许满足策略的请求通过。
禁止:该类型访问控制会拒绝满足策略的请求。
访问控制的策略生效条件分为两种,分别是满足任意一项策略和同时满足所有策略:
满足任意一项策略:当访问控制类型为允许的时候,请求只需要满足策略中的任意一个即可,当所有策略都不满足时,则会被拒绝;当访问控制类型为禁止的时候,请求满足任意一个策略时都会被拒绝,当都不满足时请求会通过。
同时满足所有策略:当访问控制类型为允许的时候,请求必须同时满足所有策略才会被允许转发到后端,其余情况都会被拒绝;当访问控制类型为禁止的时候,请求只有在满足所有策略条件的时候会被拒绝转发到后端,其余情况则会判断为允许。
创建访问控制
1.选择"访问控制",点击"新建访问控制",创建新的访问控制。
2.访问控制类型有"允许"和"禁止"两种,分别对应允许和拒绝请求。
3.访问控制的策略生效条件也分为两种:满足任意一项策略和同时满足所有策略,含义如上文所解释。
填写相应信息,选择访问控制类型后,点击"确认"完成创建。
添加策略
一个访问控制可以添加至多3个策略项,分别对应着来源 IP 、用户的账户ID(ACCOUNT ID)或应用AK(APP KEY)三个不同的维度。根据访问控制的类型和策略的生效条件,API网关会选择允许或拒绝该请求。
1.在访问控制详情页中,点击"添加策略项"添加策略项:
也可以在访问控制列表页中点击"控制策略"列下的管理进入访问控制详情后添加策略项:
2.打开策略项的添加对话框后,选择策略维度,添加对应的维度的策略项,比如 IP 维度对应的策略项为请求来源的 IP ,填写该策略项为所要生效的 IP 或 IP 段;应用AK维度对应的策略项为请求来源对应的 APP KEY,填写要生效的 APP KEY;账号 ID 维度对应的策略项为请求的账户 ID,所要填写的策略项为用户的账户 ID。策略项可以填写多个,(填写多个请以换行或“;”分割,个数不超过50个):
编辑策略
在访问控制的详情页中,可以对策略进行编辑,变更其具体的策略项:
删除策略
在访问控制详情页中,点击对应策略的"删除"按钮,确认后删除策略:
绑定API
一个 API 有测试、预发布、线上三种环境,每种环境只能绑定一个访问控制。如果将已绑定了访问控制的 API 绑定到新的访问控制中,那么对于该 API 而言,新的访问控制会覆盖旧的访问控制。
1.在访问控制详情页中,点击"绑定的API列表"后,点击"绑定API"进行API绑定:
或者在访问控制列表页点击"绑定API数量"列下的"管理"按钮,再点击"绑定API"进行绑定:
2.打开 API 绑定对话框后,选择要绑定的 API:
注意:如果 API 上原来已经绑定了一个策略,则会被当前绑定的策略覆盖。
解绑API
在访问控制详情页中,点击"绑定的 API 列表"中对应 API "操作"列下的"解绑":
如果要解绑多个 API,可勾选对应 API 后,点击"批量解绑"
编辑访问控制
在访问控制的列表页和详情页都有编辑访问控制的入口
点击编辑按钮之后,您可以对该访问控制的名字、类型、描述等信息进行编辑
编辑之后点击确认之后保存编辑的内容。
删除访问控制
在访问控制列表中,点击"操作"列下的"删除",确认后删除: