本文為您介紹當MaxCompute項目開啟白名單功能時,如何添加、查看、修改、關閉經典網絡和VPC網絡的IP白名單及場景。僅Project Owner和Super_Administrator角色以及自定義的包含IP白名單管理相關權限的項目管理類角色有權限執行此操作。
背景信息
MaxCompute的安全訪問控制有多個層次,例如項目空間的多租戶及安全認證機制。僅當獲取到正確且經過授權的AccessKey ID及AccessKey Secret時,您才能通過鑒權,并在授權范圍內進行數據訪問和計算。
在安全訪問控制基礎上,MaxCompute增加IP白名單控制方式。當MaxCompute項目開啟白名單功能時,僅允許白名單內的設備訪問項目空間;非白名單內的設備訪問項目空間時,即使擁有正確的AccessKey ID及AccessKey Secret,也無法通過鑒權。以下是經典網絡和VPC網絡添加IP白名單的部分場景。
經典網絡下的IP白名單。
使用MaxCompute客戶端訪問項目空間,您需要配置部署MaxCompute客戶端所在設備的IP地址。
使用應用系統訪問項目空間,您需要配置部署應用系統Server的設備的IP地址。
通過代理服務器或多跳代理服務器訪問項目空間,您需要配置的IP地址為最后一跳代理服務器的IP地址。
通過ECS設備訪問MaxCompute服務,您需要配置的IP地址為NAT IP。NAT IP詳情請參見彈性公網IP。
如果您是DataWorks用戶,請將DataWorks獨享資源組等相關IP地址加入到白名單中。
VPC網絡下的IP白名單。
設置VPC網絡下的IP白名單時,您需要:
獲取VPC網絡的VPC實例ID。
配置VPC網絡下的Endpoint。詳情參見Endpoint。
添加所有連接MaxCompute服務的IP地址至白名單列表。例如您如果使用數據集成、數據地圖、Flink等服務,則需要添加對應服務的IP地址至白名單列表。
MaxCompute僅支持設置項目級別的IP白名單。支持的IP地址表示形式如下:
IPv4或IPv6:例如192.168.0.0或2001:db8::。
帶子網掩碼的IP地址:例如172.12.0.0/16或2001:db8::/32。
網段:例如192.168.10.0-192.168.255.255或2001:db8:1:1:1:1:1:1-2001:db8:4:4:4:4:4:4。
添加IP白名單
MaxCompute支持使用客戶端等命令行方式來添加白名單,也支持在MaxCompute的控制臺上界面化操作添加白名單。
命令行方式添加IP白名單
經典網絡的IP白名單參數為odps.security.ip.whitelist;VPC網絡的白名單參數為odps.security.vpc.whitelist。更多命令格式及參數說明請參見查看項目空間屬性。
在MaxCompute客戶端執行如下命令將IP地址添加至IP白名單中:
如果只配置經典網絡IP白名單,則經典網絡訪問受配置限制,VPC網絡訪問全部禁止。配置命令示例如下。
setproject odps.security.ip.whitelist=192.168.0.0 odps.security.vpc.whitelist=\N;
設置經典網絡的IP白名單時,請在IP白名單中添加操作MaxCompute客戶端所在的設備IP,以免將自己屏蔽。
如果只配置VPC網絡IP白名單,則VPC網絡訪問受配置限制,經典網絡訪問全部禁止。配置命令示例如下。
setproject odps.security.ip.whitelist=\N odps.security.vpc.whitelist=<vpc實例id>[192.168.0.10,192.168.0.20];
如果經典網絡或VPC網絡IP白名單均需要配置,則經典網絡和VPC網絡訪問均受配置限制。配置命令示例如下。
setproject odps.security.ip.whitelist=192.168.0.0 odps.security.vpc.whitelist=<vpc實例id>[192.168.0.10,192.168.0.20];
如果經典網絡和VPC網絡IP白名單均配置,且有多個經典網絡IP和多個VPC實例的IP。配置命令示例如下。
● setproject odps.security.ip.whitelist=192.168.0.0,192.168.0.10 odps.security.vpc.whitelist=<vpc實例id1>[192.168.0.10,192.168.0.20],<vpc實例id2>;
多個經典網絡IP使用半角逗號(,)分隔;VPC網絡IP的格式為
VPC實例ID[IP列表]
,如果需要把某個VPC實例的所有IP都加入這個白名單,則直接輸入VPC實例ID即可。
設置IP白名單后,您需要等待五分鐘后才會生效。
控制臺上添加IP白名單
您可以登錄MaxCompute控制臺進入對應地域的項目管理頁面,單擊目標項目操作列的管理,在參數配置頁簽中,編輯IP白名單。
經典網絡IP:IP列表以半角逗號(,)分隔。如果只配置經典網絡IP白名單,則經典網絡訪問受配置限制,VPC網絡訪問全部禁止。
VPC網絡IP:IP列表以英文逗號(,)分隔。如果只配置VPC網絡IP白名單,則VPC網絡訪問受配置限制,經典網絡訪問全部禁止。IP白名單示例:
<vpc實例id1>[192.168.0.10,192.168.0.20],<vpc實例id2>
。
查看IP白名單
您可以執行setproject;
命令查看IP白名單列表。odps.security.ip.whitelist=
或odps.security.vpc.whitelist
的內容即為白名單列表。如果odps.security.ip.whitelist=
或odps.security.vpc.whitelist
的內容為空,則表示未設置白名單列表。
setproject;
返回結果如下。
odps.security.ip.whitelist=192.168.0.0
odps.security.vpc.whitelist=<vpc實例id>[192.168.0.10,192.168.0.20]
如果您使用之前區域ID和VPC ID的方式配置的VPC網絡IP白名單,返回結果示例如下:
odps.security.vpc.whitelist=cn-beijing_125179[192.168.0.10,192.168.0.20]
修改IP白名單
您可以執行setproject
命令,分別修改經典網絡或VPC網絡的IP白名單列表。修改后,舊的IP白名單列表會失效,系統以新的IP白名單列表為準控制訪問權限。
修改經典網絡IP白名單
setproject odps.security.ip.whitelist=192.168.0.10;
修改VPC網絡IP白名單
setproject odps.security.vpc.whitelist=<vpc實例id>[192.168.10.10,192.168.0.20];
關閉IP白名單
執行如下命令關閉IP白名單功能,經典網絡和VPC網絡訪問將不受限制。
setproject odps.security.ip.whitelist= odps.security.vpc.whitelist= ;
經典網絡和VPC網絡的IP白名單必須同時置為空,才表示關閉了IP白名單功能。
設置阿里云產品訪問MaxCompute白名單
您可以通過如下命令設置所有阿里云產品都可以通過VPC網絡訪問MaxCompute。
setproject odps.security.ip.whitelist=192.168.0.0/16,172.16.0.0/12,10.0.0.0/8,11.0.x.x/8,33.0.x.x/8,100.64.0.0/10 odps.security.vpc.whitelist=<regionname>_*,cn_*;
11.0.x.x/8與33.0.x.x/8地址中的x為占位符,表示0~255之間的任意數值。
odps.security.ip.whitelist
:經典網絡的IP白名單。您可以參考上述IP填寫即可,如果還有其他需要設置的IP地址,直接追加到IP地址列表。regionname
:阿里云產品所在RegionID。
RegionID
阿里云區域ID如下。
區域 | RegionID |
華東1(杭州) | cn-hangzhou |
華東2(上海) | cn-shanghai |
華北2(北京) | cn-beijing |
華北3(張家口) | cn-zhangjiakou |
華北6(烏蘭察布) | cn-wulanchabu |
華南1(深圳) | cn-shenzhen |
西南1(成都) | cn-chengdu |
中國香港 | cn-hongkong |
華東 2 金融云 | cn-shanghai-finance-1 |
華北 2 阿里政務云 1 | cn-north-2-gov-1 |
華南 1 金融云 | cn-shenzhen-finance-1 |
日本(東京) | ap-northeast-1 |
新加坡 | ap-southeast-1 |
澳大利亞(悉尼)關停中 | ap-southeast-2 |
馬來西亞(吉隆坡) | ap-southeast-3 |
印度尼西亞(雅加達) | ap-southeast-5 |
德國(法蘭克福) | eu-central-1 |
英國(倫敦) | eu-west-1 |
美國(硅谷) | us-west-1 |
美國(弗吉尼亞) | us-east-1 |
阿聯酋(迪拜) | me-east-1 |
受白名單限制報錯示例
受經典網絡IP白名單限制后,報錯如下:
FAILED:Accessdeniedbyprojectipwhitelist:sourceIP:'xxxxx'isnotinwhitelist.project:xxx
表示當前發起訪問請求的IP(sourceIP)不在經典網絡IP白名單中,對應的Project為報錯信息中的
project: xxx
。您需要將
sourceIP
加到對應Project的經典網絡IP白名單列表中。受VPC IP白名單限制后,報錯如下:
FAILED:Accessdeniedbyprojectipwhitelist:sourceIP:'xxxxx'isnotinwhitelist.project:xxxFAILED:Accessdeniedbyprojectvpcwhitelist:vpc:'vpc-xxx'notinvpcwhitelist,ip:'xxxx'.project:xxx
表示當前發起訪問請求的VPC IP不在VPC白名單中,對應的Project為報錯信息中的
project: xxx
。您需要將這個VPC IP加到對應Project的VPC IP白名單列表中。