IP訪問列表
使用雲SaaS應用程序的企業需要限製對自己員工的訪問。身份驗證有助於證明用戶身份,但不能強製執行用戶的網絡位置。從不安全的網絡訪問雲服務可能會給企業帶來安全風險,特別是當用戶可能已授權訪問敏感數據或個人數據時。企業網絡周邊應用安全策略並限製對外部服務(例如,防火牆、代理、DLP和日誌記錄)的訪問,因此超出這些控製的訪問被認為是不可信的。
例如,假設醫院員工訪問Databricks工作區。如果員工從辦公室走到咖啡店,醫院可以阻止到Databricks工作空間的連接,即使客戶擁有訪問web應用程序和REST API的正確憑據。
您可以配置Databricks工作空間,使員工隻能通過具有安全邊界的現有公司網絡連接到服務。Databricks客beplay体育app下载地址戶可以使用IP訪問列表特性來定義一組已批準的IP地址。對web應用程序和REST api的所有傳入訪問都要求用戶從授權的IP地址連接。
遠程或出差的員工可以使用VPN連接到公司網絡,從而訪問工作空間。使用前麵的示例,醫院可以允許員工從咖啡店使用VPN訪問Databricks工作區。
如果使用PrivateLink,請注意IP訪問列表僅適用於通過internet(公共IP地址)的請求。來自PrivateLink流量的私有IP地址不能被IP訪問列表阻塞。要阻止來自PrivateLink流量的特定私有IP地址,請使用AWS網絡防火牆。如果要將PrivateLink連接限製為一組已注冊的PrivateLink端點,請更改工作區的私有訪問設置對象以使用ENDPOINT訪問級別。
需求
此功能需要Databricks平台E2版本Beplay体育安卓版本。
E2平台上創建了新帳戶(一些自定義帳戶除外),大多數現有帳戶已經遷移。Beplay体育安卓版本如果您不確定您的帳戶是否在E2平台上,請聯係您的Databricks代表。Beplay体育安卓版本
IP訪問列表隻支持IPv4 (Internet Protocol version 4)地址。
靈活的配置
IP訪問列表特性非常靈活:
您自己的工作空間管理員控製允許訪問的公共Internet上的IP地址集。這被稱為允許列表。允許多個IP地址顯式或作為整個子網(例如216.58.195.78/28)。
工作空間管理員可以選擇指定要阻止的IP地址或子網,即使它們包含在允許列表中。這就是所謂的塊列表。如果允許的IP地址範圍包括較小範圍的基礎架構IP地址,而這些IP地址實際上超出了實際的安全網絡邊界,則可以使用此特性。
工作區管理員使用REST api更新允許和阻止的IP地址和子網列表。
功能細節
IP訪問列表API允許Databricks管理員為工作空間配置IP允許列表和阻止列表。如果工作區禁用了該特性,則允許所有訪問。支持允許列表(包含)和阻止列表(排除)。
嚐試連接時:
1.首先檢查所有的塊列表。如果連接IP地址匹配任何阻斷列表,則拒絕連接。
2.如果連接沒有被阻塞列表拒絕時,IP地址與allow列表進行比較。如果工作區至少有一個允許列表,則隻有IP地址與允許列表匹配時才允許連接。如果工作區沒有允許列表,則允許所有IP地址。
對於所有允許列表和阻止列表的組合,工作空間最多支持1000個IP/CIDR值,其中一個CIDR作為單個值。
IP訪問列表特性修改後,可能需要幾分鍾才能生效。
如何使用IP訪問列表API
本文討論可以使用API執行的最常見的任務。有關完整的REST API參考,請參見IP訪問列表API 2.0。要了解如何對Databricks api進行身份驗證,請參見使用Databricks個人訪問令牌進行身份驗證。
本文中描述的端點的基本路徑是https:// < databricks-instance > / api / 2.0
,在那裏< databricks-instance >
是<描述> .cloud.m.eheci.com
Databricks部署的域名。
檢查您的工作區是否啟用了IP訪問列表功能
要檢查工作區是否啟用了IP訪問列表特性,請調用獲取功能狀態API(得到/ workspace-conf
).通過鍵= enableIpAccessLists
作為請求的參數。
在響應中,enableIpAccessLists
字段指定真正的
或假
。
在響應中,enableIpAccessLists
字段指定真正的
或假
。
例如:
curl -X -n\https:// < databricks-instance > / api / 2.0 / workspace-conf ?鑰匙=enableIpAccessLists
示例響應:
{“enableIpAccessLists”:“真正的”,}
為工作空間啟用或禁用IP訪問列表特性
要啟用或禁用工作區的IP訪問列表特性,請調用啟用或禁用IP訪問列表API(補丁/ workspace-conf
).
在JSON請求體中,指定enableIpAccessLists
作為真正的
(使)或假
(禁用)。
例如,要啟用該特性:
curl -X PATCH -n\https:// < databricks-instance > / api / 2.0 / workspace-conf\- d”{“enableIpAccessLists”:“真正的”} '
示例響應:
{“enableIpAccessLists”:“真正的”}
添加IP訪問列表
要添加IP訪問列表,請調用添加一個IP訪問列表API(帖子/ ip-access-lists
).
在JSON請求體中,指定:
標簽
-此列表的標簽。list_type
——要麼允許
(允許列表)或塊
(一個阻止列表,這意味著即使在允許列表中也要排除)。ip_addresses
- IP地址和CIDR範圍的JSON數組,作為字符串值。
響應是您傳入的對象的副本,但是有一些附加字段,最重要的是list_id
字段。您可能希望保存該值,以便稍後更新或刪除該列表。如果您沒有保存它,您仍然可以在以後通過查詢完整的IP訪問列表來獲得ID得到
向/ ip-access-lists
端點。
例如,添加一個允許列表:
curl -X POST -n\https:// < databricks-instance > / api / 2.0 / ip-access-lists - d”{“標簽”:“辦公室”,“list_type”:“允許”,“ip_addresses”:(“1.1.1.1”,“2.2.2.2/21”]} '
示例響應:
{“ip_access_list”:{“list_id”:“< list-id >”,“標簽”:“辦公室”,“ip_addresses”:(“1.1.1.1”,“2.2.2.2/21”],“address_count”:2,“list_type”:“允許”,“created_at”:1578423494457,“created_by”:6476783916686816,“updated_at”:1578423494457,“updated_by”:6476783916686816,“啟用”:真正的}}
要添加一個塊列表,請執行相同的操作,但是使用list_type
設置為塊
。
更新IP訪問列表
更新IP訪問列表。
調用列出所有IP訪問列表API(
得到/ ip-access-lists
),並找到要更新的列表的ID。調用更新一個IP訪問列表API(
補丁/ ip-access-lists / < list-id >
).
在JSON請求體中,指定至少一個要更新的值:
標簽
-此列表的標簽。list_type
——要麼允許
(允許列表)或塊
(阻止列表,這意味著即使在允許列表中也不允許)。ip_addresses
- IP地址和CIDR範圍的JSON數組,作為字符串值。啟用
—該列表是否啟用。通過真正的
或假
。
響應是您傳入的對象的副本,其中包含用於ID和修改日期的附加字段。
例如,要更新一個列表以禁用它:
curl -X PATCH -n\https:// < databricks-instance > / api / 2.0 / ip-access-lists / < list-id > - d'{"enabled": "false"}'
更換IP訪問列表
使用實例替換IP訪問列表。
調用列出所有IP訪問列表API(
得到/ ip-access-lists
),並找出要替換的列表的ID。調用替換一個IP訪問列表API(
把/ ip-access-lists / < list-id >
).
在JSON請求體中,指定:
標簽
-此列表的標簽。list_type
——要麼允許
(允許列表)或塊
(阻止列表,這意味著即使在允許列表中也不允許)。ip_addresses
- IP地址和CIDR範圍的JSON數組,作為字符串值。啟用
—該列表是否啟用。通過真正的
或假
。
響應是您傳入的對象的副本,其中包含用於ID和修改日期的附加字段。
例如,將指定列表的內容替換為以下值:
curl -X PUT -n\https:// < databricks-instance > / api / 2.0 / ip-access-lists / < list-id > - d”{“標簽”:“辦公室”,“list_type”:“允許”,“ip_addresses”:(“1.1.1.1”,“2.2.2.2/21”],“啟用”:“假”} '
刪除IP訪問列表
刪除IP訪問列表。
調用列出所有IP訪問列表API(
得到/ ip-access-lists
),並找出要刪除的列表的ID。調用刪除一個IP訪問列表API(
刪除/ ip-access-lists / < list-id >
).
例如:
curl -X DELETE -n\https:// < databricks-instance > / api / 2.0 / ip-access-lists / < list-id >