使用阿里云专属网络VPC,可以构建出一个隔离的网络环境,并可以自定义IP 地址范围、网段、路由表和网关等;此外,也可以通过专线/VPN/GRE等连接方式实现云上VPC与传统IDC的互联,构建混合云业务。
API网关也支持您部署在专属网络VPC中的服务开放API。在开始此文章之前,请确认您已经了解专属网络VPC的
使用方法。
若您的后端服务在VPC环境,需要进行授权API网关访问才可开放相应API。创建API流程如下:
1 授权与绑定VPC
开放VPC环境的API,需要您先授权API网关可访问您VPC内的服务。授权时需指定API网关可以访问的资源+端口,如:SLB 的443端口、ECS 的80端口。
- 授权成功后,API网关将通过内网访问VPC内部资源
- 此授权只会被用作API网关访问相应后端资源
- API网关不可访问未被授权的资源或者端口
例如:只将VPC 1中SLB 1的80端口授权给API网关,那么API网关只能访问vpc 1中SLB 1的80端口
1.1 准备VPC环境
1) 购买VPC环境的,SLB、ECS,并搭建服务,可以参照
VPC使用手册
2)查询VPC信息,需要准备如下VPC信息
- VPC ID:您后端服务所在的VPCID
- 实例ID:您后端所在的实例ID,可以是ECS或者SLB的实例ID,若使用了SLB,请填写SLB的实例ID
- 端口号:调用您后端服务所使用的端口号
1.2 授权API网关访问
进入
【API网关控制台】-【开放API】-【VPC授权】,点击“创建授权”
进入授权页面,填写相应信息
- VPC名称:为此条授权的名称标识,供创建API时选择后端地址使用,所以为了便于后续管理,请保证此名称的唯一。
点击确定,完成授权
[backcolor=transparent]若您有多个VPC,或者要授权多个实例、端口,请重复如上步骤
2 创建API
创建API的流程与其他类型API方式一致,请参照:
创建API。
在选择后端服务地址时,请选择:
- VPC通道:请选择“使用VPC通道”
- VPC授权:请选按需求选择所创建的授权
其他部分内容,与其他API定义方式一致
保存后,则API创建完成。
3 安全组授权
[backcolor=transparent]视情况必需:对于后端使用SLB,或者没有改动过ECS安全组授权策略的用户,可以跳过此步。
若您API的后端服务为ECS,且您修改过安全组“内网入方向”访问策略,需要增加问策略允许如下IP段访问(请根据服务所区域配置)。
3 API测试
可以到通过以下方式测试您的API
4 解除授权
若您授权的资源或者端口不再提供服务,请删除相应授权。
5 FAQ
使用此功能是否有额外费用?
否,此功能免费使用,无额外费用产生。
是否可以绑定多个VPC?
可以,若您的后端服务在多个VPC,可以添加多个授权。
为什么我无法授权我的VPC
请确认,VPCID、实例ID和端口号的正确,并保证授权策略和VPC在同一个区域。
授权API网关后,我的VPC安全么?
当您的VPC授权API网关可访问,网关与VPC的网络联通。在安全方面做了限制,不会造成VPC的安全问题。
- 安全控制授权操作:只有VPC的所有者能够操作授权。
- 授权后API网关与VPC建立专享通道:他人不可使用此同道。
- 授权是针对某个资源的端口:无其他端口或资源的访问权限。