開始
用戶指南
管理指南
參考指南
資源
2022年8月11日更新
給我們反饋
如果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加密即將進行的更改,請更新網絡安全組(或防火牆),以允許從數據平麵到FIPS連接端口2443上的控製平麵的出站訪問。這是在您已經需要允許的傳出端口443訪問之外的。客管vpc的相關安全組和防火牆配置請參見安全組而且配置防火牆和出站接入(可選).
如果任何工作空間位於US East Region、US West Region或Canada (Central) Region,並且它被配置為限製出站網絡訪問,那麼您需要允許傳輸到其他端點的流量,以支持FIPS端點。請記住,如果您使用這些區域並且現在不限製傳出訪問,那麼如果您將來限製傳出訪問,您將需要重新訪問此步驟。
僅對於S3服務,您必須確保AWS帳戶中的Classic數據平麵網絡允許S3的雲服務和帶前綴的S3服務的FIPS變體的AWS端點的輸出流量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個工作人員、任意DBR版本和任意實例類型。
創建一個附加到集群的筆記本。使用此集群進行以下測試。
在筆記本中,通過運行以下命令驗證DBFS連通性:
%fs ls / %sh ls /dbfs . sh
確認出現的文件清單沒有錯誤。
在筆記本中,確認對區域的控製平麵實例的訪問。從表格中獲取地址本節並為您的VPC區域尋找Webapp端點。
%sh nc -zv . sh443
例如,VPC區域us-west-2:
us-west-2
%sh nc -zv oregon.cloud.www.eheci.com443
確認結果表示成功。
在筆記本中,確認您所在區域的SCC中繼的訪問權限。從表格中獲取地址本節並為您的VPC區域尋找SCC中繼端點。
%sh nc -zv . sh2443
例如,VPC區域us-west-1:
us-west-1
%sh nc -zv tunnel.cloud.www.eheci.com2443
確認結果顯示它成功了。
在筆記本中,確認對您區域的S3、STS和Kinesis FIPS端點的訪問。
請注意
對於這一步,加拿大的FIPS端點隻應用於S3服務。AWS還沒有為STS和Kinesis提供FIPS端點。
%sh nc -zv .s3-fips..amazonaws.com . sh443%sh nc -zv sts..amazonaws.com443%sh nc -zv kinesis..amazonaws.com443
[cn443[cn] [cn443[cn] [cn443
確認所有三個命令的結果都表示成功。
在同一個筆記本中,驗證集群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,M5dn,M5n,M5zn,P3dn,P4d,R5dn,R5n.
ca5
C5ad
C5n
C6gn
D3
D3en
G4ad
G4dn
i3en
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帳戶中的經典數據平麵.這適用於筆記本和作業的集群,以及用於典型的SQL倉庫.
強製使用AWS硝基實例類型在集群和Databricks SQL SQL倉庫。實例類型僅限於在集群節點之間提供硬件實現的網絡加密和為本地磁盤提供靜止加密的實例。這適用於用於筆記本電腦和作業的集群以及與Databricks SQL一起使用的經典SQL倉庫.支持的實例類型集為ca5,C5ad,C5n,C6gn,D3,D3en,G4ad,G4dn,I3en,M5dn,M5n,M5zn,P3dn,P4d,R5dn,R5n.
I3en
集群內部和出口的通信使用TLS 1.2或更高加密,包括連接到metastore。
集群受限於安全遵從性概要文件支持的版本。Databricks在UI中限製了Databricks的運行時版本,並且不允許對不支持的Databricks運行時版本的API請求。支持的版本為Databricks Runtime 6.4 Extended Support及以上版本。
一個屏蔽標誌出現在頁麵左下方用戶圖標的導航欄中。
最初,當導航欄折疊時,圖標顯示為.
如果您將鼠標懸停在圖標上,導航欄展開,則屏蔽也會出現,並顯示一條消息:“<工作空間-name>遵從安全配置文件”。
本文檔中討論的數據平麵增強僅適用於AWS帳戶中的經典數據平麵.
當啟用安全遵從配置文件時,Databricks不允許使用Serverless SQL倉庫,它們在共享中運行Serverless數據平麵在Databricks的帳戶中。
數據庫中運行兩個監視代理“Databricks”AWS帳戶的控製平麵:
ClamAV殺毒
用於文件完整性監視的Capsule8
看到Databricks中的監視代理計算映像.
在啟用安全遵從配置文件的情況下,Classic數據平麵中的Databricks計算資源(集群工作映像)使用基於的增強的加固操作係統映像Ubuntu的優勢.Ubuntu Advantage是一個針對開源基礎設施和應用程序的企業級安全和支持包,包括以下內容:
一個順式1級硬化的形象
FIPS 140-2 Level 1驗證加密模塊
在啟用安全遵從配置文件的同時,還啟用了其他安全監視代理,包括在用於Databricks計算資源虛擬機的映像中預安裝的兩個代理。您不能禁用增強型磁盤映像中的監視代理。
監控代理
描述
如何獲得輸出
Capsule8
監視文件完整性和安全邊界的違反。此監視代理運行在您集群中的工作虛擬機上。
配置審計日誌交付並檢查日誌新行.
ClamAV
掃描文件係統中的病毒,包括每天對主機上的病毒進行掃描。此監視代理運行在集群和Classic SQL倉庫等計算資源中的虛擬機上。
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。
數據庫集群和Classic SQL倉庫在默認情況下是臨時的。在啟動時,集群和Classic SQL倉庫使用最新的可用基映像。可能存在安全漏洞的舊版本對新集群不可用。
您負責確保沒有長時間運行的集群。
你有責任重新啟動集群(使用UI或API)定期使用,以確保它們使用最新打過補丁的主機虛擬機鏡像。
Databricks可以根據請求共享一個Databricks筆記本,該筆記本列出了您的工作空間正在運行的集群,並標識了超過指定天數的主機,還可以重新啟動集群。
如果發現工作虛擬機上的監視器代理由於崩潰或其他終止而沒有運行,則係統將嚐試重新啟動該代理。
ClamAV和Capsule8日誌被發送到您自己的Amazon S3桶中審計日誌交付.這些日誌的保留、攝取和分析是您的責任。
Qualys的漏洞報告和日誌由Databricks在Qualys SaaS平台中保留至少一年。Beplay体育安卓版本如果需要,您可以請求漏洞報告。您可以向您的Databricks代表請求日誌。
在使用安全配置文件啟用工作區之後,您需要重新啟動在啟用之前創建的所有集群,以確保它正在使用安全配置文件增強功能和控件。
如果有許多正在運行的集群,並且隻想重新啟動啟用前啟動的集群,那麼可以使用該腳本確定啟動時間是否在啟用日期之前。給定一個工作區URL, a用於訪問REST api的個人訪問令牌在此工作區和啟用日期/時間上,此腳本返回啟用時間戳之前啟動和/或重新啟動的集群列表。腳本打印集群ID和集群名稱。
進口請求進口json#本筆記本需要用戶級個人訪問令牌。這個應該被儲存起來#在Databricks Secrets API(或類似的API)中,不應該硬編碼在筆記本中。#使用Databricks命令行或API添加一個秘密CLI的例子:create-scope——scope YOUR_SCOPE_NAME# $ databricks secret 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示例" 22-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,的名字))