開始
用戶指南
管理指南
參考指南
資源
2022年12月20日更新
給我們反饋
如果Databricks工作區具有遵從性安全配置文件啟用後,工作區具有其他特性和控件。該配置文件支持額外的監視、節點間加密的強製實例類型、經過加固的計算映像和其他特性。詳細信息請參見特點和技術控製.
遵從性安全配置文件包括幫助滿足某些遵從性標準中的某些安全需求的控件。但是,您可以選擇為其增強的安全特性啟用遵從性安全配置文件,而不需要遵從任何遵從性標準。
啟用遵從性安全配置文件,才能使用Databricks處理受以下遵從性標準管製的數據:
pci dss
HIPAA
FedRAMP溫和
選擇要啟用遵從性安全配置文件的方式:
帳戶級別:您可以選擇將遵從性安全配置文件應用到您的帳戶,在這種情況下,帳戶中的所有現有和未來工作區都使用安全配置文件。
工作水平:您可以指定啟用哪些安全配置文件的工作空間。
您的Databricks帳戶必須包含增強的安全性和合規性附加組件。詳細信息請參見定價頁.
Databricks工作空間位於平台的E2版本上。Beplay体育安卓版本
Databricks工作區位於企業級。
單點登錄(SSO)為工作空間配置身份驗證。
準備將使用安全配置文件的任何現有工作區。看到為遵從性安全配置文件準備一個工作空間.
請與Databricks代表聯係,並請求在帳戶級別或僅為某些工作區添加遵從性安全配置文件。
如果您希望僅對某些工作空間啟用它,請發送您希望用於概要文件的工作空間的工作空間id列表。在使用工作區時,從URL獲取工作區ID。尋找o =在URL中。後麵的數字o =是Databricks工作區ID。例如,如果URL為https:// < databricks-instance > / ? o = 6280049833385130,工作區ID為6280049833385130.
o =
https:// < databricks-instance > / ? o = 6280049833385130
6280049833385130
等待確認概要文件現在已啟用。
如果有任何集群或SQL倉庫正在運行,請重新啟動它們。如果您有許多正在運行的集群,並且隻想重新啟動啟用前啟動的集群,那麼您可以使用Databricks提供的腳本確定所有集群的開始時間是否在啟用日期之前.
安裝完成。根據需要創建或使用Databricks計算資源。
請記住,如果啟用遵從性安全配置文件對於您的帳戶或工作空間,長時間運行的集群將在25天後自動重新啟動。Databricks建議管理員在運行25天之前定期重新啟動集群,並在計劃的維護窗口內執行。這降低了自動重啟中斷預定作業的風險。您可以使用Databricks提供的腳本來確定您的集群已經運行了多長時間,並可以選擇重新啟動它們。看到重新啟動集群以使用最新的映像更新它.
為遵從性安全概要文件準備工作空間需要一些步驟。如果您還沒有啟用安全配置文件,請執行以下步驟之前要求啟用安全配置文件.
如果安全配置文件已經在帳戶級別啟用,並且您創建了任何新的工作區,那麼您必須在創建任何新的工作區之後執行這些步驟。
如果您啟用遵從性安全配置文件對於您的帳戶或工作空間,長時間運行的集群將在25天後自動重新啟動。如果在啟用遵從性安全配置文件時,任何集群運行了25天或更長時間,則集群將立即重新啟動,這將導致任何正在運行的作業失敗。相反,在啟用安全配置文件之前,應該檢查長時間運行的集群。這降低了自動重啟中斷預定作業的風險。
重要的
檢查您的集群已經運行了多長時間,並重新啟動運行時間超過20天(而不是25天)的集群,以降低在啟用安全配置文件時集群在運行25天後自動重新啟動的風險。看到重新啟動集群以使用最新的映像更新它.
配置單點登錄(SSO)認證.
添加需要的網口。
對於具有PrivateLink後端連接的工作區:如果工作空間使用PrivateLink後端連接用於AWS帳戶中的Classic數據平麵與Databricks帳戶中的Databricks控製平麵之間的私有連接。
其中之一PrivateLink後端連接的組網需求是為端點創建一個單獨的安全組,允許HTTPS/443和TCP/6666對工作空間子網和端點子網本身進行雙向訪問(從和到)。此配置允許對REST api(端口443)和安全集群連接(6666)進行訪問。然後,您可以將安全組用於這兩個目的。
要支持FIPS加密即將進行的更改,請將網絡安全組更新為另外允許雙向訪問端口2443的FIPS連接。允許雙向訪問的端口總數為443、2443和6666。
對於沒有PrivateLink後端連接的工作區:如果工作空間不使用PrivateLink後端連接進行私有連接,但工作空間配置為限製出站網絡訪問,則需要允許流量到其他端點以支持FIPS端點。
要支持FIPS加密即將發生的更改,請更新網絡安全組(或防火牆),以允許從數據平麵到端口2443上的控製平麵的出站訪問FIPS連接。這是在您已經被要求允許的外出端口443訪問的基礎上進行的。客戶管理vpc的相關安全組和防火牆配置請參見安全組而且配置防火牆和出站接入(可選).
如果任何工作空間位於美國東部區域、美國西部區域或加拿大(中部)區域,並且已配置為限製出站網絡訪問,則需要允許流量到其他端點以支持FIPS端點。請記住,如果使用這些區域並且現在不限製外向訪問,如果將來限製外向訪問,則需要重新考慮此步驟。
僅對於S3服務,您必須確保AWS帳戶中的經典數據平麵網絡允許向S3雲服務的AWS端點以及帶有前綴的S3服務的FIPS變體發送流量s3-fips.這適用於S3服務,但不適用於STS和Kinesis端點。
s3-fips
對於S3,允許出站流量到端點s3。<地區> .amazonaws.com而且s3-fips。<地區> .amazonaws.com.例如s3.us -東- 1. - amazonaws.com而且s3 fips.us -東- 1. amazonaws.com.
s3。<地區> .amazonaws.com
s3-fips。<地區> .amazonaws.com
s3.us -東- 1. - amazonaws.com
s3 fips.us -東- 1. amazonaws.com
對於STS,允許出方向的流量到達端點sts。<地區> .amazonaws.com.
sts。<地區> .amazonaws.com
對於Kinesis,允許出站流量到端點運動。<地區> .amazonaws.com.
運動。<地區> .amazonaws.com
對於使用概要文件的每個工作區,運行以下測試以驗證是否正確應用了更改:
啟動一個Databricks集群,其中包含1個驅動程序和1個worker,任何DBR版本和任何實例類型。
創建一個連接到集群的筆記本。使用此集群進行以下測試。
在筆記本中,通過運行以下命令驗證DBFS連接:
%fs ls / %sh ls /dbfs .使用實例
確認顯示的文件清單沒有錯誤。
在筆記本中,確認對區域的控製平麵實例的訪問。從表中獲取地址本節並為您的VPC區域尋找Webapp端點。
%sh nc -zv .使用實例443
例如,VPC區域us-west-2:
us-west-2
%sh nc -zv oregon.cloud.m.eheci.com443
確認結果表示成功。
在筆記本中,確認對您所在區域的SCC中繼的訪問。從表中獲取地址本節並為您的VPC區域尋找SCC中繼端點。
%sh nc -zv .使用實例2443
例如,VPC區域us-west-1:
us-west-1
%sh nc -zv tunnel.cloud.m.eheci.com2443
確認結果表明它成功了。
在筆記本中,確認訪問您所在區域的S3、STS和Kinesis FIPS端點。
請注意
對於這一步,加拿大的FIPS端點僅應用於S3服務。AWS還沒有為STS和Kinesis提供FIPS端點。
%sh nc -zv <桶名>.s3-fips.<區域>.amazonaws.com443%sh nc -zv sts..amazonaws.com443%sh nc -zv kinesis..amazonaws.com443
zv acme-company-bucket.s3-fips.us-west-1.amazonaws.com443zv sts.us-west-1.amazonaws.com443kinesis.us-west-1.amazonaws.com443
確認所有三個命令的結果都表明成功。
在同一個筆記本中,驗證集群Spark配置是否指向所需的端點。例如:
> > > spark.conf.get(“fs.s3a.stsAssumeRole.stsEndpoint”)“sts.us -西方- 1. amazonaws.com”> > > spark.conf.get(“fs.s3a.endpoint”)“s3 fips.us -西方- 2. amazonaws.com”
確認所有受影響工作區中的所有現有集群和作業僅使用遵從性安全配置文件支持的實例類型。確認或更改所有集群和作業,使實例類型為以下類型之一:ca5,C5ad,C5n,C6gn,D3,D3en,G4ad,G4dn,i3en,i4i,M5dn,M5n,M5zn,P3dn,P4d,R5dn,R5n.
ca5
C5ad
C5n
C6gn
D3
D3en
G4ad
G4dn
i3en
i4i
M5dn
M5n
M5zn
P3dn
P4d
R5dn
R5n
實例類型之外的任何工作負載都會導致集群/作業無法使用invalid_parameter_exception.
invalid_parameter_exception
安全性遵從性配置文件的主要增強功能會影響AWS帳戶中的Databricks計算資源,也稱為AWS帳戶中的經典數據平麵.這些增強功能包括:
增強的磁盤映像(aCIS-hardenedUbuntu的優勢AMI)。
集群將在25天後自動重新啟動,並獲得帶有最新安全更新的最新AMI。
如果您啟用遵從性安全配置文件對於您的帳戶或工作空間,長時間運行的集群將在25天後自動重新啟動。Databricks建議管理員在啟用安全配置文件時重新啟動可能運行了25天的集群,並在計劃的維護窗口期間這樣做。這降低了自動重啟中斷預定作業的風險。您可以使用Databricks提供的腳本來確定您的集群已經運行了多長時間,並可以選擇重新啟動它們。看到重新啟動集群以使用最新的映像更新它.
生成您可以查看的日誌的安全監視代理。兩個監控器代理運行在工作空間中的計算資源(集群工作者)上AWS帳戶中的經典數據平麵.這適用於用於筆記本和作業的集群,以及用於pro或經典SQL倉庫.
強製使用AWS硝基集群和Databricks SQL SQL倉庫中的實例類型。實例類型僅限於在集群節點之間提供硬件實現的網絡加密和為本地磁盤提供靜態加密的實例類型。這適用於用於筆記本和作業的集群還有pro或經典的SQL倉庫使用Databricks SQL.支持的實例類型為ca5,C5ad,C5n,C6gn,D3,D3en,G4ad,G4dn,i3en,i4i,M5dn,M5n,M5zn,P3dn,P4d,R5dn,R5n.
集群內的通信和用於出口的通信使用TLS 1.2加密或更高版本,包括連接到metastore。
集群僅限於安全遵從性概要文件支持的版本。Databricks在UI中限製了Databricks運行時版本,並且不允許API請求不支持的Databricks運行時版本。支持的版本為Databricks Runtime 7.3 LTS及以上。
在頁麵左下角的用戶圖標導航欄中會出現屏蔽標誌。看到確認為工作空間啟用了遵從性安全配置文件.
本文檔中討論的數據平麵增強僅適用於AWS帳戶中的經典數據平麵.
當啟用安全遵從性配置文件時,Databricks不允許使用無服務器SQL倉庫,在共享中運行無服務器數據平麵在Databricks帳戶中。
數據庫中運行兩個監視代理“Databricks AWS”帳戶中的控製平麵:
ClamAV殺毒
用於文件完整性監視的Capsule8
看到在Databricks中監視代理計算映像.
當啟用安全遵從性配置文件時,經典數據平麵中的Databricks計算資源(集群工作映像)將使用基於增強的加固操作係統映像Ubuntu的優勢.Ubuntu Advantage是一個針對開源基礎設施和應用程序的企業安全和支持包,包括以下內容:
一個CIS 1級硬化的形象
FIPS 140-2 1級驗證過的加密模塊
在啟用安全法規遵循配置文件的同時,還有其他安全監視代理,包括兩個預安裝在用於Databricks計算資源虛擬機的映像中的代理。不能禁用增強磁盤映像中的監視代理。
監控代理
描述
如何獲得輸出
Capsule8
監視文件完整性和安全邊界的違反。此監控器代理運行在集群中的工作者VM上。
配置審計日誌傳遞並檢查日誌新行.
ClamAV
掃描文件係統中的病毒,包括每日主機病毒掃描。此監控器代理運行在您的計算資源(如集群和專業或經典SQL倉庫)中的vm上。
Qualys
掃描容器主機虛擬機,查找某些已知漏洞和cve。掃描發生在Databricks環境中的代表性圖像中。
向Databricks代表請求圖像掃描報告。
數據平麵映像包括Capsule8,這是一個文件完整性監視服務,為帳戶中的Classic數據平麵中的計算資源(集群工作者)提供運行時可見性和威脅檢測。
在其中生成Capsule8監視輸出審計日誌.要訪問這些日誌,管理員必須進行設置審計日誌傳遞到Amazon S3桶。有關特定於Capsule8的新可審計事件的JSON模式,請參見Capsule8和ClamAV的審計日誌模式.
檢查Capsule8日誌是您的責任。根據Databricks的全權決定,Databricks可以審查這些日誌,但不承諾這樣做。如果代理檢測到惡意活動,則您有責任對這些事件進行分類,如果需要Databricks采取解決或補救措施,則使用Databricks打開支持票據。Databricks可能會根據這些日誌采取行動,包括暫停或終止資源,但不作出任何承諾。
增強的數據平麵映像包括ClamAV,這是一個用於檢測木馬、病毒、惡意軟件和其他惡意威脅的開源防病毒引擎。
在內部生成ClamAV監控輸出審計日誌.要訪問這些日誌,管理員必須進行設置審計日誌傳遞到Amazon S3桶。有關特定於ClamAV的新可審計事件的JSON模式,請參見Capsule8和ClamAV的審計日誌模式.
你有責任檢查ClamAV的日誌。根據Databricks的全權決定,Databricks可以審查這些日誌,但不承諾這樣做。如果代理檢測到惡意活動,則您有責任對這些事件進行分類,如果需要Databricks采取解決或補救措施,則使用Databricks打開支持票據。Databricks可能會根據這些日誌采取行動,包括暫停或終止資源,但不作出任何承諾。
構建新AMI時,更新的簽名文件將包含在新AMI中。
一個名為Qualys的監視代理為某些已知cve執行容器主機(VM)的漏洞掃描。
掃描發生在Databricks環境中的代表性圖像中。
您可以向Databricks代表索取Qualys掃描報告。
當通過Qualys發現漏洞時,Databricks會根據其漏洞管理SLA跟蹤漏洞,並在可用時發布更新的映像。您有責任定期重新啟動所有計算資源,以使映像保持最新的映像版本。
在Classic數據平麵中用於計算資源的磁盤映像上的附加監視代理是用於升級係統的標準Databricks過程的一部分:
經典數據平麵基本磁盤映像(AMI)由Databricks擁有、管理和修補。
Databricks通過發布新的磁盤映像(ami)來發布和應用安全補丁。交付計劃取決於新功能和已發現漏洞的SLA。典型的交貨是每2-4周。
數據平麵的基本操作係統是Ubuntu Advantage 18.04 LTS。
默認情況下,數據庫集群和專業或經典SQL倉庫是短暫的。在啟動時,集群和專業或經典SQL倉庫使用最新可用的基本映像。可能存在安全漏洞的舊版本對新集群不可用。
您負責確保沒有長時間運行的集群。
你有責任重新啟動集群(使用UI或API),以確保他們使用最新補丁的主機虛擬機鏡像。
Databricks可以根據請求共享一個Databricks筆記本,該筆記本列出了您的工作區正在運行的集群,並識別出超過指定天數的主機,還可以選擇重新啟動集群。
如果發現worker VM上的監控器代理由於崩潰或其他終止而沒有運行,係統將嚐試重新啟動該代理。
ClamAV和Capsule8日誌被發送到您自己的Amazon S3桶審計日誌傳遞.這些日誌的保留、攝取和分析由您負責。
Qualys漏洞報告和日誌由Databricks在Qualys SaaS平台中保留至少一年。Beplay体育安卓版本如果需要,可以請求提供漏洞報告。您可以向Databricks代表請求這些日誌。
要確認工作空間正在使用遵從性安全配置文件,請檢查它是否具有黃盾標誌顯示在用戶界麵中。在頁麵左下角的用戶圖標導航欄中會出現屏蔽標誌。
最初,當導航欄折疊時,圖標顯示為.
如果您將鼠標懸停在圖標上,導航欄會展開,屏蔽圖標也會出現,並顯示一條消息:“<工作區-name>合規性安全配置文件”。
如果工作區缺少屏蔽圖標,請與Databricks代表聯係。
在使用安全配置文件啟用工作區之後,您需要重新啟動在啟用之前創建的所有集群,以確保它正在使用安全配置文件增強功能和控件。
如果您有許多正在運行的集群,並且隻想重新啟動在啟用之前啟動的集群,那麼您可以使用這個腳本來確定啟動時間是否在啟用日期之前。給定一個工作區URL,一個用於訪問REST api的個人訪問令牌在此工作空間和啟用日期/時間上,此腳本返回啟用時間戳之前啟動和/或重新啟動的集群列表。該腳本打印集群ID和集群名稱。
進口請求進口json這個筆記本需要一個用戶級的個人訪問令牌。這個應該儲存起來在Databricks Secrets API(或類似API)中使用#,不應該在筆記本中硬編碼。使用Databricks CLI或API添加一個秘密。CLI的例子:# $ databricks秘密創建範圍——範圍YOUR_SCOPE_NAME# $ databricks secrets put——scope splunk_env——key YOUR_KEY_NAME#配置下麵的作用域和鍵名。#======更新以下內容WORKSPACE_URL=“< WORKSPACE_URL_HERE >”令牌=dbutils.秘密.得到(範圍=“YOUR_SCOPE_NAME”,關鍵=“YOUR_KEY_NAME”)#應該配置以下其中一個:WORKSPACE_ENABLEMENT_TIME_UTC_MILLIS= <TIME_IN_UTC>#注意millis,例如1651366230000WORKSPACE_ENABLEMENT_TIME_FORMATTED=沒有一個#格式YYYY-MM-DD HH:MM:SS -0000#示例“2022-06-01 15:01:01 -0700”#======更新以上內容如果WORKSPACE_ENABLEMENT_TIME_FORMATTED! =沒有一個:WORKSPACE_ENABLEMENT_TIME_UTC_MILLIS=datetime.strptime(WORKSPACE_ENABLEMENT_TIME_FORMATTED,“% Y - % m% d% H: % M: % S % z”).時間戳()*1000頭={“授權”:“持票人”+令牌}url=WORKSPACE_URL+“/ api / 2.0 /集群/列表”響應=請求.請求(“獲得”,url,頭=頭,數據={})集群=json.加載(響應.文本) [“集群”]need_restart=[]為c在集群:start_time=c[“start_time”]last_start=start_time如果“last_restarted_time”在c:last_start=馬克斯(start_time,c[“last_restarted_time”])如果last_start< =WORKSPACE_ENABLEMENT_TIME_UTC_MILLIS:need_restart.附加((c[“cluster_id”),c[“cluster_name”)))如果(len(need_restart)= =0):打印(“所有集群都已重新啟動{}".格式(WORKSPACE_ENABLEMENT_TIME_UTC_MILLIS))其他的:打印(“以下集群仍然需要重新啟動以保持合規”)為(id,名字)在need_restart:打印(“集群{},{}".格式(id,名字))