API网关 APIG
API网关 APIG
- 最新动态
- 功能总览
- 服务公告
- 产品介绍
- 计费说明
- 快速入门
-
用户指南
- APIG业务使用流程
- 创建用户并授权使用APIG
- 创建APIG实例
- 开放API
- 配置API调用授权(可选)
- 调用API
-
管理API
- 管理API概述
- 查看或编辑APIG的API信息
- 配置API的自定义认证
- 配置API的参数编排规则
- 自定义API的错误响应信息
- 克隆APIG的API
- 下线APIG的API
- 导入导出API
-
APIG的API设计文件扩展定义
- x-apigateway-auth-type
- x-apigateway-request-type
- x-apigateway-match-mode
- x-apigateway-cors
- x-apigateway-is-send-fg-body-base64
- x-apigateway-any-method
- x-apigateway-backend
- x-apigateway-backend.parameters
- x-apigateway-backend.httpEndpoints
- x-apigateway-backend.httpVpcEndpoints
- x-apigateway-backend.functionEndpoints
- x-apigateway-backend.mockEndpoints
- x-apigateway-backend-policies
- x-apigateway-backend-policies.conditions
- x-apigateway-ratelimit
- x-apigateway-ratelimits
- x-apigateway-ratelimits.policy
- x-apigateway-ratelimits.policy.special
- x-apigateway-access-control
- x-apigateway-access-controls
- x-apigateway-access-controls.policy
- x-apigateway-plugins
- x-apigateway-auth-opt
- x-apigateway-result-normal-sample
- x-apigateway-result-failure-sample
- x-apigateway-authorizer
- x-apigateway-response
- x-apigateway-responses
- x-apigateway-pass-through
- x-apigateway-sample
- x-apigateway-content-type
- x-apigateway-orchestrations
- 配置API策略
- 配置凭据策略
- 管理APIG实例
- 查看监控指标与配置告警
- 查看APIG审计日志
- 共享版操作指导(仅存量用户使用)
- 最佳实践
- 开发指南
-
API参考
- 使用前必读
- API概览
- 如何调用API
-
专享版API(V2)
- 专享版-API分组管理
- 专享版-环境管理
- 专享版-环境变量管理
- 专享版-流控策略管理
- 专享版-API管理
- 专享版-签名密钥管理
- 专享版-签名密钥绑定关系管理
- 专享版-API绑定流控策略
- 专享版-设置特殊流控
- 专享版-APP授权管理
- 专享版-概要查询
- 专享版-域名管理
- 专享版-ACL策略管理
- 专享版-API绑定ACL策略
- 专享版-自定义认证管理
- 专享版-OpenAPI接口
- 专享版-VPC通道管理
- 专享版-监控信息查询
- 专享版-分组自定义响应管理
- 专享版-标签管理
- 专享版-实例特性管理
- 专享版-配置管理
- 专享版-实例管理
- 专享版-实例终端节点管理
- 专享版-实例标签管理
- 专享版-微服务中心管理
- 专享版-SSL证书管理
- 专享版-插件管理
- 专享版-凭据管理
- 专享版-凭据配额管理
- 专享版-异步任务管理
- 专享版-编排规则管理
- 专享版-实例自定义入方向端口管理
- 共享版API(仅存量用户使用)
- 权限策略和授权项
- 附录
- 修订记录
- SDK参考
-
常见问题
- 热门咨询
- 产品咨询
- 开放API
- 发布API
-
调用API
- 调用API失败的可能原因
- 调用API报“414 Request URI too large”
- 调用API报“The API does not exist or has not been published in the environment”
- 调用API报“No backend available”
- API的后端服务报“Backend unavailable”或“Backend timeout”
- API的后端服务报“Backend domain name resolution failed”
- 调用API报“Incorrect IAM authentication information”
- 调用API报“Incorrect app authentication information”
- 修改API后端服务的超时时间上限“backend_timeout”后未生效
- APIG对API请求体的大小是否有限制?
- API调用对请求的响应消息体限制
- 使用iOS系统时,如何使用APP认证调用API?
- 新建一个华为IAM认证方式的API,在配置入参时为什么无法配置HEADER位置的x-auth-token?
- 是否支持移动应用调用API?
- 部署在VPC下的应用是否可以调用API?
- APIG是否支持WebSocket数据传输?
- API的策略后端有多个时,怎么匹配和执行API请求?
- 如何通过APIG访问公网后端服务?
- API认证
- API策略
- 导入导出API
-
更多文档
-
用户指南(吉隆坡区域)
- 产品介绍
- 快速入门
- 新旧版本差异
- 总览
-
API管理
- 创建API分组
- 绑定域名
- 创建环境变量
- 新增网关响应
- 创建API
- 克隆API
- 开启跨域访问
- 调试API
- 授权API
- 发布API
- 下线API
-
导入导出API
- 限制与兼容性说明
- 导入API
- 导出API
-
扩展定义
- x-apigateway-auth-type
- x-apigateway-request-type
- x-apigateway-match-mode
- x-apigateway-cors
- x-apigateway-any-method
- x-apigateway-backend
- x-apigateway-backend.parameters
- x-apigateway-backend.httpEndpoints
- x-apigateway-backend.httpVpcEndpoints
- x-apigateway-backend.functionEndpoints
- x-apigateway-backend.mockEndpoints
- x-apigateway-backend-policies
- x-apigateway-backend-policies.conditions
- x-apigateway-ratelimit
- x-apigateway-ratelimits
- x-apigateway-ratelimits.policy
- x-apigateway-ratelimits.policy.special
- x-apigateway-access-control
- x-apigateway-access-controls
- x-apigateway-access-controls.policy
- x-apigateway-plugins
- 查看API列表
- 支持HTTP2.0
- API策略
- 凭据管理
- 监控分析
- 实例管理
- SDK
- 调用已发布的API
- 权限管理
- 云审计服务支持的关键操作
-
常见问题
- 热门咨询
- API创建
-
API调用
- API调用失败的可能原因有哪些?
- API调用返回错误码如何处理?
- API调用报错“414 Request URI too large”
- "The API does not exist or has not been published in the environment."如何解决?
- No backend available,怎么解决?
- 后端服务调用失败“Backend unavailable”或超时“Backend timeout”原因分析
- 后端服务调用报错域名无法解析“Backend domain name resolution failed”
- 修改后端服务的超时时间上限“backend_timeout”后未生效
- 如何切换调用环境?
- 调用请求包最大支持多少?
- 使用iOS系统时,如何进行APP认证?
- 新建一个IAM认证方式的API,在配置入参时为什么无法配置HEADER位置的x-auth-token?
- 应用(凭据)问题汇总
- 是否支持移动应用调用API?
- 部署在VPC下的应用是否可以调用API?
- API网关是否支持WebSocket数据传输?
- API调用是否支持长连接
- 策略后端有多个时,怎么匹配和执行
- API调用对请求的响应消息体限制
- 如何通过APIG访问公网后端服务
- API认证鉴权
- API控制策略
- API发布
- API导入导出
- API安全
- 其他
- 修订记录
- 开发指南(吉隆坡区域)
-
API参考(吉隆坡区域)
- 使用前必读
- 如何调用API
-
专享版API(V2)
- 专享版-API分组管理
- 专享版-环境管理
- 专享版-环境变量管理
- 专享版-流控策略管理
- 专享版-API管理
- 专享版-签名密钥管理
- 专享版-签名密钥绑定关系管理
- 专享版-API绑定流控策略
- 专享版-设置特殊流控
- 专享版-APP授权管理
- 专享版-概要查询
- 专享版-域名管理
- 专享版-ACL策略管理
- 专享版-API绑定ACL策略
- 专享版-自定义认证管理
- 专享版-OpenAPI接口
- 专享版-VPC通道管理
- 专享版-监控信息查询
- 专享版-分组自定义响应管理
- 专享版-标签管理
- 专享版-实例特性管理
- 专享版-配置管理
- 专享版-实例管理
- 专享版-实例终端节点管理
- 专享版-实例标签管理
- 专享版-SSL证书管理
- 专享版-插件管理
- 专享版-凭据管理
- 专享版-凭据配额管理
- 专享版-异步任务管理
- 权限策略和授权项
- 附录
- 修订记录
-
用户指南(阿布扎比区域)
- 产品介绍
- 快速入门
- 新旧版本差异
- 总览
-
API管理
- 创建API分组
- 导入CCE工作负载
- 绑定域名
- 创建环境变量
- 新增网关响应
- 创建API
- 创建GRPC API
- 克隆API
- 开启跨域访问
- 调试API
- 授权API
- 发布API
- 下线API
-
导入导出API
- 限制与兼容性说明
- 导入API
- 导出API
-
扩展定义
- x-apigateway-auth-type
- x-apigateway-request-type
- x-apigateway-match-mode
- x-apigateway-cors
- x-apigateway-is-send-fg-body-base64
- x-apigateway-any-method
- x-apigateway-backend
- x-apigateway-backend.parameters
- x-apigateway-backend.httpEndpoints
- x-apigateway-backend.httpVpcEndpoints
- x-apigateway-backend.functionEndpoints
- x-apigateway-backend.mockEndpoints
- x-apigateway-backend-policies
- x-apigateway-backend-policies.conditions
- x-apigateway-ratelimit
- x-apigateway-ratelimits
- x-apigateway-ratelimits.policy
- x-apigateway-ratelimits.policy.special
- x-apigateway-access-control
- x-apigateway-access-controls
- x-apigateway-access-controls.policy
- x-apigateway-plugins
- 查看API列表
- 支持HTTP2.0
- API策略
- 凭据管理
- 监控分析
- 实例管理
- SDK
- 调用已发布的API
- 权限管理
- 云审计服务支持的关键操作
-
常见问题
- 热门咨询
- API创建
-
API调用
- API调用失败的可能原因有哪些?
- API调用返回错误码如何处理?
- API调用报错“414 Request URI too large”
- "The API does not exist or has not been published in the environment."如何解决?
- No backend available,怎么解决?
- 后端服务调用失败“Backend unavailable”或超时“Backend timeout”原因分析
- 后端服务调用报错域名无法解析“Backend domain name resolution failed”
- 修改后端服务的超时时间上限“backend_timeout”后未生效
- 如何切换调用环境?
- 调用请求包最大支持多少?
- 使用iOS系统时,如何进行APP认证?
- 新建一个IAM认证方式的API,在配置入参时为什么无法配置HEADER位置的x-auth-token?
- 应用(凭据)问题汇总
- 是否支持移动应用调用API?
- 部署在VPC下的应用是否可以调用API?
- API网关是否支持WebSocket数据传输?
- API调用是否支持长连接
- 策略后端有多个时,怎么匹配和执行
- API调用对请求的响应消息体限制
- 如何通过APIG访问公网后端服务
- API认证鉴权
- API控制策略
- API发布
- API导入导出
- API安全
- 其他
- 修订记录
- 开发指南(阿布扎比区域)
-
API参考(阿布扎比区域)
- 使用前必读
- 如何调用API
-
专享版API(V2)
- 专享版-API分组管理
- 专享版-环境管理
- 专享版-环境变量管理
- 专享版-流控策略管理
- 专享版-API管理
- 专享版-签名密钥管理
- 专享版-签名密钥绑定关系管理
- 专享版-API绑定流控策略
- 专享版-设置特殊流控
- 专享版-APP授权管理
- 专享版-概要查询
- 专享版-域名管理
- 专享版-ACL策略管理
- 专享版-API绑定ACL策略
- 专享版-自定义认证管理
- 专享版-OpenAPI接口
- 专享版-VPC通道管理
- 专享版-监控信息查询
- 专享版-分组自定义响应管理
- 专享版-标签管理
- 专享版-实例特性管理
- 专享版-配置管理
- 专享版-实例管理
- 专享版-实例终端节点管理
- 专享版-实例标签管理
- 专享版-微服务中心管理
- 专享版-SSL证书管理
- 专享版-插件管理
- 专享版-凭据管理
- 专享版-凭据配额管理
- 专享版-异步任务管理
- 权限策略和授权项
- 附录
- 修订记录
- 最佳实践(阿布扎比区域)
- 用户指南(巴黎区域)
- 开发指南(巴黎区域)
- API参考(巴黎区域)
-
用户指南专享版(巴黎区域)
- 产品介绍
- 快速入门
- 新旧版本差异
- 总览
-
API管理
- 创建API分组
- 绑定域名
- 创建环境变量
- 新增网关响应
- 创建API
- 开启跨域访问
- 调试API
- 授权API
- 发布API
- 下线API
-
导入导出API
- 限制与兼容性说明
- 导入API
- 导出API
-
扩展定义
- x-apigateway-auth-type
- x-apigateway-request-type
- x-apigateway-match-mode
- x-apigateway-cors
- x-apigateway-any-method
- x-apigateway-backend
- x-apigateway-backend.parameters
- x-apigateway-backend.httpEndpoints
- x-apigateway-backend.httpVpcEndpoints
- x-apigateway-backend.functionEndpoints
- x-apigateway-backend.mockEndpoints
- x-apigateway-backend-policies
- x-apigateway-backend-policies.conditions
- x-apigateway-ratelimit
- x-apigateway-ratelimits
- x-apigateway-ratelimits.policy
- x-apigateway-ratelimits.policy.special
- x-apigateway-access-control
- x-apigateway-access-controls
- x-apigateway-access-controls.policy
- x-apigateway-plugins
- 查看API列表
- API策略
- 凭据管理
- 监控分析
- 实例管理
- 调用已发布的API
- 权限管理
- 云审计服务支持的关键操作
-
常见问题
- 热门咨询
- API创建
-
API调用
- API调用失败的可能原因有哪些?
- API调用返回错误码如何处理?
- API调用报错“414 Request URI too large”
- "The API does not exist or has not been published in the environment."如何解决?
- No backend available,怎么解决?
- 后端服务调用失败“Backend unavailable”或超时“Backend timeout”原因分析
- 后端服务调用报错域名无法解析“Backend domain name resolution failed”
- 修改后端服务的超时时间上限“backend_timeout”后未生效
- 如何切换调用环境?
- 调用请求包最大支持多少?
- 使用iOS系统时,如何进行APP认证?
- 新建一个IAM认证方式的API,在配置入参时为什么无法配置HEADER位置的x-auth-token?
- 应用(凭据)问题汇总
- 是否支持移动应用调用API?
- 部署在VPC下的应用是否可以调用API?
- API网关是否支持WebSocket数据传输?
- API调用是否支持长连接
- 策略后端有多个时,怎么匹配和执行
- API调用对请求的响应消息体限制
- 如何通过APIG访问公网后端服务
- API认证鉴权
- API控制策略
- API发布
- API导入导出
- API安全
- 其他
- 修订记录
- 开发指南专享版(巴黎区域)
-
API参考专享版 (巴黎区域)
- 使用前必读
- 如何调用API
- 专享版API(V2)
- 权限策略和授权项
- 附录
- 修订记录
-
用户指南(吉隆坡区域)
- 通用参考
本文导读
链接复制成功!
使用WAF对APIG进行安全防护
应用场景
企业为了保护APIG及后端服务器免受恶意攻击,可在APIG和外部网络之间部署WAF。
方案架构
图1 后端服务器访问原理
![点击放大](https://support.huaweicloud.com/intl/zh-cn/bestpractice-apig/zh-cn_image_0000002177422969.png)
方案优势
方案一:API分组通过域名方式对外提供服务,具备更强的可扩展性。
方案一(推荐):WAF侧注册对外访问域名并配置证书,通过APIG实例的分组调试域名访问后端服务
- 在APIG实例中,新建API分组,并记录域名,将API添加在新建的分组中。
- 登录API网关控制台页面,在左侧导航栏中选择“API管理 > API分组”。
- 单击“创建分组 > 直接创建”,填写分组名称完成创建。
- 单击已创建分组名称,进入分组详情。
- 在“分组信息”页签中,查看调试域名并记录。该调试域名唯一且不可修改,每天最多可以访问1000次。
- 在“API运行”页签中,单击“创建API > 创建API”,即可添加API。
- 在WAF侧添加防护域名。进入WAF控制台,单击“网站设置 > 添加防护网站”,即可配置防护域名。配置“源站地址”时,需要填写API分组的域名,并添加证书。添加域名后,还需执行放行回源IP、本地验证、修改域名DNS解析设置。详细操作步骤请参考网站接入WAF。
客户从公网客户端访问WAF时,使用的是WAF对外访问域名,WAF转发给APIG时同样使用该对外访问域名,APIG收到访问该域名的请求无次数限制。
- 在APIG实例中,为API分组绑定已创建的防护域名。
- 进入APIG控制台,在左侧导航栏中选择“API管理 > API分组”。
- 单击已创建的分组名称。
- 在“分组信息”页签中的“域名管理”区域,单击“绑定独立域名”。
- 在弹窗中添加已创建的防护域名即可。
- 在APIG实例中,将“real_ip_from_xff”开关打开,并设置参数运行值为“1”。
方案二(备选):使用DEFAULT分组实现转发功能,WAF侧通过IP访问后端服务
- 在APIG实例中,查看入口地址。通过IP调用访问APIG实例,无访问次数限制。
- 登录APIG控制台,在左侧导航栏中选择“实例管理”。
- 单击实例名称或“查看控制台”。
- 在“基础信息”页签中,查看入口地址。
- 虚拟私有云访问地址为VPC内网地址。
- 弹性IP地址为公网地址。
- 在DEFAULT分组中添加API。
- 在APIG控制台的左侧导航栏中,选择“API管理 > API分组”。
- 单击“DEFAULT”分组名称。
- 单击“创建API > 创建API”,即可添加API。
- 在WAF侧添加防护域名。进入WAF控制台,单击“网站设置 > 添加防护网站”,即可配置防护域名。配置“源站地址”为API网关实例的入口地址,并添加证书。添加域名后,还需执行放行回源IP、本地验证、修改域名DNS解析设置。详细操作步骤请参考网站接入WAF。
- 如果WAF与APIG在同一VPC下,“源站地址”可以填写私网地址。
- 如果APIG绑定弹性IP,“源站地址”可以填写公网地址。
- 在APIG实例中,为DEFAULT分组绑定已创建的防护域名。
- 在APIG控制台的左侧导航栏中,选择“API管理 > API分组”。
- 单击“DEFAULT”分组名称。
- 在“分组信息”页签中的“域名管理”区域,单击“绑定独立域名”。
- 在弹窗中添加已创建的防护域名。
- 在APIG实例中,将“real_ip_from_xff”开关打开,并设置参数运行值为“1”。
父主题: API安全