通过AccessKey网络访问限制策略,限制使用永久AccessKey的API请求来源IP地址,将AccessKey调用来源控制在可信的网络环境内,提升AccessKey的安全性。
策略类型
RAM提供以下两种AccessKey网络访问限制策略:
账号级AccessKey网络访问限制策略
该策略对阿里云账号内所有AccessKey生效,包括主账号AccessKey和RAM用户AccessKey。如果您要对账号内所有AccessKey设置统一的策略,请设置账号级AccessKey网络访问限制策略。
AccessKey级网络访问限制策略
该策略对主账号或RAM用户的单个AccessKey生效。如果您要对单个AccessKey设置策略,或在账号已有策略的情况下要对指定AccessKey设置不同于账号级的特殊策略,请设置AccessKey级网络访问限制策略。
AccessKey级策略优先级高于账号级策略,当某个AccessKey配置了AccessKey级策略时,账号级策略对该AccessKey不生效。
两种类型的AccessKey网络访问限制策略判定流程如下:
使用说明
AccessKey网络访问限制策略仅对永久AccessKey进行调用限制,对临时凭证STS Token无效。
如果您要对控制台登录进行网络访问限制,请使用登录掩码。更多信息,请参见网络访问限制设置。
请先使用测试环境AccessKey或新建AccessKey进行测试,测试符合预期后,再配置生产环境AccessKey的策略,避免因IP地址设置不全影响线上业务的正常运行。
如果部署在阿里云上的应用程序通过公网调用其他云服务,则设置公网类型的AccessKey网络访问限制策略;如果通过私网调用其他云服务,则设置专有网络类型的网络访问限制策略。
使用限制
AccessKey网络访问限制策略对除云消息队列RocketMQ版、云消息队列RabbitMQ版、云消息队列MQTT版、事件总线EventBridge、轻量消息队列、云监控(通过HTTP上报事件监控数据功能)、实时数仓Hologres以外的所有云服务生效,未支持的云服务上线时间由云服务另行通知。
云账号和单个AccessKey均支持最多添加8条网络访问限制策略,其中公网策略最多添加1条。
每条策略最多包含50个IP地址/IP地址段。
配置策略
网络访问限制策略配置后会立即生效,建议您在配置前参考AccessKey审计记录,结合企业网络管理信息,梳理可信的网络地址列表,确保访问策略地址准确和完整。
配置账号级网络访问限制策略
使用RAM管理员登录RAM控制台。
在设置页面的网络访问限制区域,单击允许通过AccessKey访问的来源网络地址右侧的修改。
在账号级网络访问限制策略面板,设置公网策略和专有网络策略后,启用策略并单击提交。
策略状态:选中启用,当前配置的策略才会生效。
公网策略:单击添加公网策略,输入公网IP地址或IP地址段,支持IPv4和IPv6格式。不添加任何公网策略,表示拒绝所有公网IP访问;单击允许所有公网访问,会添加一条
0.0.0.0/0
或::/0
公网策略,表示允许所有公网IP访问。专有网络策略:单击添加专有网络策略,输入VPC ID和VPC内的IP地址或IP地址段,支持IPv4和IPv6格式。不添加任何专有网络策略,表示拒绝所有VPC内的IP地址访问;单击允许所有专有网络访问,会添加一条VPC ID为
AllowAllVPC
,IP地址为0.0.0.0/0
或::/0
专有网络策略,表示允许所有VPC内的所有IP地址访问。
支持一条策略中输入多个IP地址或IP地址段,多个IP地址使用空格、半角逗号(,)或半角分号(;)分隔。
配置RAM用户的AccessKey级网络访问限制策略
使用RAM管理员登录RAM控制台。
在左侧导航栏,选择 。
在用户页面,单击目标RAM用户名称。
在认证管理页签下的AccessKey区域,单击目标AccessKey操作列的网络访问限制策略。
在AccessKey级网络访问限制策略面板,设置公网策略和专有网络策略后,启用策略并单击提交。
策略状态:选中启用,当前配置的策略才会生效。
公网策略:单击添加公网策略,输入公网IP地址或IP地址段,支持IPv4和IPv6格式。不添加任何公网策略,表示拒绝所有公网IP访问;单击允许所有公网访问,会添加一条
0.0.0.0/0
或::/0
公网策略,表示允许所有公网IP访问。专有网络策略:单击添加专有网络策略,输入VPC ID和VPC内的IP地址或IP地址段,支持IPv4和IPv6格式。不添加任何专有网络策略,表示拒绝所有VPC内的IP地址访问;单击允许所有专有网络访问,会添加一条VPC ID为
AllowAllVPC
,IP地址为0.0.0.0/0
或::/0
专有网络策略,表示允许所有VPC内的所有IP地址访问。
支持一条策略中输入多个IP地址或IP地址段,多个IP地址使用空格、半角逗号(,)或半角分号(;)分隔。
配置主账号的AccessKey级网络访问限制策略
使用阿里云账号(主账号)登录阿里云控制台。
将鼠标悬浮在右上方的账号图标上,单击AccessKey。
在不建议使用云账号AccessKey对话框,勾选我确认知晓云账号AccessKey安全风险,然后单击继续使用云账号AccessKey。
单击目标AccessKey操作列的网络访问限制策略。
在AccessKey级网络访问限制策略面板,设置公网策略和专有网络策略后,启用策略并单击提交。
策略状态:选中启用,当前配置的策略才会生效。
公网策略:单击添加公网策略,输入公网IP地址或IP地址段,支持IPv4和IPv6格式。不添加任何公网策略,表示拒绝所有公网IP访问;单击允许所有公网访问,会添加一条
0.0.0.0/0
或::/0
公网策略,表示允许所有公网IP访问。专有网络策略:单击添加专有网络策略,输入VPC ID和VPC内的IP地址或IP地址段,支持IPv4和IPv6格式。不添加任何专有网络策略,表示拒绝所有VPC内的IP地址访问;单击允许所有专有网络访问,会添加一条VPC ID为
AllowAllVPC
,IP地址为0.0.0.0/0
或::/0
专有网络策略,表示允许所有VPC内的所有IP地址访问。
支持一条策略中输入多个IP地址或IP地址段,多个IP地址使用空格、半角逗号(,)或半角分号(;)分隔。
配置示例
场景 | 策略配置 |
场景 | 策略配置 |
对所有AccessKey不作网络访问限制 | 账号级和AccessKey级网络访问限制策略状态均设置为不启用(无论策略是否有内容)。 |
允许来自全部公网IP的调用 | 在账号级或AccessKey级网络访问限制策略中添加一条IP地址为 |
允许来自全部VPC内IP的调用 | 在账号级或AccessKey级网络访问限制策略中添加一条VPC ID为 |
拒绝所有来自公网IP的调用 | 在账号级或AccessKey级网络访问限制策略中将策略状态设置为启用,但是不添加任何公网策略。 |
拒绝所有来自VPC内IP的调用 | 在账号级或AccessKey级网络访问限制策略中将策略状态设置为启用,但是不添加任何专有网络策略。 |
存在账号级网络访问限制,需要设置某个指定AccessKey允许全部公网和VPC的IP调用。 | 对指定AccessKey启用AccessKey级网络访问限制策略,策略内容如下:
|
允许阿里云账号下所有AccessKey通过公网IP(例如: | 启用账号级网络访问限制策略,策略内容如下:
具体操作,请参见配置账号级网络访问限制策略。 |
允许指定AccessKey通过公网IP(例如: | 对指定AccessKey启用AccessKey级网络访问限制策略,策略内容如下:
启用AccessKey级网络访问限制策略后,账号级策略对该AccessKey不生效。 具体操作,请参见配置RAM用户的AccessKey级网络访问限制策略、配置主账号的AccessKey级网络访问限制策略。 |
常见问题
如何梳理可信网络IP地址?
在操作审计查看历史调用IP地址
您可以借助操作审计提供的审计日志查询和分析历史已成功调用的来源IP地址。具体如下:
已创建SLS跟踪投递:在操作审计控制台的跟踪页面,打开跟踪详情,单击SLS日志库名称跳转到日志服务控制台,通过搜索查询可以统计指定AccessKey(字段event.userIdentity.accessKeyId)的历史调用的IP地址(event.sourceIpAddress),也可统计历史调用的VPC ID(event.vpcId)。具体操作,请参见通过SLS或OSS控制台查询事件。
查询语句示例:
* | SELECT "event.userIdentity.accessKeyId" AS access_key_id, "event.sourceIpAddress" AS source_ip_address, "event.vpcId" AS vpc_id FROM log WHERE "event.userIdentity.accessKeyId" = 'LTAI****************'
未创建SLS跟踪投递:在操作审计控制台的AccessKey审计页面,输入AccessKey ID,在调用记录中依次查看每个云服务的调用源IP地址。具体操作,请参见查询AccessKey日志。
操作审计只能查询支持的云服务审计事件,对于操作审计未支持的数据类事件,您需要借助云服务自有的审计功能查询。
查询网络配置
部署在阿里云的应用
当应用程序部署在阿里云ECS、容器服务等上面,您可以直接在阿里云上查询实例、集群等资源绑定的公网IP地址、专有网络VPC ID和私网网段。
如果您的应用程序调用的是云服务的公网Endpoint,即为公网调用,来源IP地址为出口公网IP地址、公网NAT网关绑定的公网IP地址。若您的应用程序调用的是云服务的VPC Endpoint,即为专有网络VPC调用,来源IP地址为VPC的私网IP地址。
云服务间调用
您使用阿里云服务A需要与阿里云服务B进行数据传输时,云服务通常会提供多种调用方式,在调用云服务B时可能会使用阿里云服务的IP地址,通常在操作审计的记录中事件源也会显示为云服务地址或者“internal”。建议您查询云服务相关文档,选择使用服务角色或其他无AccessKey凭证方案。
以下提供部分云服务间调用的配置参考:
大数据开发治理平台DataWorks:在调用MaxCompute服务进行数据分析时使用的IP网段可查询附录:数据分析白名单列表,元数据采集可能使用的IP网段可查询元数据采集的数据源有白名单访问控制时需要配置的白名单。
日志服务SLS:通过数据加工将日志流转到其他云账号,建议您创建并使用RAM角色完成同账号数据流转,替代使用AccessKey的方式。
应用实时监控服务ARMS:跨账号接入,建议使用RAM角色接入方式。
动态IP地址
当云资源进行弹性扩容、自动变配时,IP地址会动态变化,需要及时将新的IP地址添加至AccessKey网络访问限制策略。
函数计算:默认使用动态的公网IP,无法提供确切的IP地址,您可以配置固定公网IP地址。
部署在非阿里云的应用
请手动确认应用部署环境的出口IP地址。
办公网络IP地址
若您使用AccessKey进行本地开发调试,请联系企业网络管理人员获取办公网络出口IP地址。
当出现API调用被网络访问限制策略拒绝,且该拒绝不符合您的预期时,该怎么办?
AccessKey网络访问限制策略生效后,调用来源IP地址不在允许范围内将会被拒绝,且无调用的审计记录。当出现调用被网络访问限制策略拒绝,且该拒绝不符合您的预期时,您可以按如下操作尝试解决:
确认被限制的AccessKey是否设置了AccessKey级网络访问限制策略。
是:修改AccessKey级网络访问限制策略,将来源IP地址加入到策略中。
否:继续下一步检查。
检查并修改账号级AccessKey网络访问限制策略,将来源IP地址加入到策略中。
如果还存在问题,可能考虑是因为来源IP地址不准确,您需要检查并获取准确的IP地址。