保護 Dataproc 環境安全至關重要,可確保機密資料安全無虞,並防止未經授權的存取行為。本文將說明提升 Dataproc 安全防護機制的關鍵最佳做法,包括網路安全、Identity and Access Management、加密和安全叢集設定的建議。
網路安全
在私有虛擬私有雲中部署 Dataproc。為 Dataproc 叢集建立專屬的虛擬私有雲,將叢集與其他網路和公開網際網路隔離。
使用私人 IP。為避免 Dataproc 叢集暴露在公用網路上,請使用私人 IP 位址,加強安全性和隔離措施。
設定防火牆規則。實作嚴格的防火牆規則,控管 Dataproc 叢集的傳入和傳出流量。僅允許必要的通訊埠和通訊協定。
使用網路對等互連。如要加強隔離,請在 Dataproc VPC 和其他機密 VPC 之間建立 VPC 網路對等互連,以控管通訊。
啟用元件閘道。建立叢集時啟用 Dataproc 元件閘道,即可安全存取 Hadoop 生態系統 UI (例如 YARN、HDFS 或 Spark 伺服器 UI),不必開啟防火牆連接埠。
Identity and Access Management
隔離權限。為不同叢集使用不同的資料層服務帳戶。只為服務帳戶指派叢集執行工作負載所需的權限。
避免依賴 Google Compute Engine (GCE) 預設服務帳戶。 請勿為叢集使用預設服務帳戶。
遵循最低權限原則。只授予 Dataproc 服務帳戶和使用者最低必要權限。
強制執行角色型存取權控管 (RBAC)。考慮為每個叢集設定 IAM 權限。
使用自訂角色。建立精細的自訂 IAM 角色,根據 Dataproc 環境中的特定職務功能量身打造。
定期檢查。定期稽核 IAM 權限和角色,找出並移除任何過多或未使用的權限。
加密
加密靜態資料。如要加密靜態資料,請使用 Cloud Key Management Service (KMS) 或客戶管理加密金鑰 (CMEK)。此外,您也可以使用機構政策,在建立叢集時強制執行靜態資料加密。
加密傳輸中的資料。啟用 SSL/TLS,確保 Dataproc 元件 (啟用 Hadoop 安全模式) 和外部服務之間的通訊安全。確保資料在傳輸過程中安全無虞。
注意機密資料。儲存及傳遞 PII 或密碼等私密資料時,請務必謹慎小心。視需要使用加密和密鑰管理解決方案。
安全叢集設定
使用 Kerberos 進行驗證。為防止未經授權存取叢集資源,請使用 Kerberos 驗證實作 Hadoop 安全模式。詳情請參閱「透過 Kerberos 實現安全的多租戶環境」。
使用高強度根主體密碼,並確保 KMS 型儲存空間安全無虞。對於使用 Kerberos 的叢集,Dataproc 會自動為叢集中執行的所有開放原始碼元件設定安全強化功能。
啟用 OS 登入。啟用 OS 登入,在透過 SSH 管理叢集節點時,提升安全性。
在 Google Cloud Storage (GCS) 中區隔暫存和臨時值區。為確保權限隔離,請為每個 Dataproc 叢集區隔暫存和臨時值區。
使用 Secret Manager 儲存憑證。Secret Manager 可保護 API 金鑰、密碼和憑證等機密資料。您可以使用這項服務管理、存取及稽核 Google Cloud中的密鑰。
使用自訂機構限制。您可以使用自訂機構政策,允許或拒絕對 Dataproc 叢集執行特定作業。舉例來說,如果建立或更新叢集的要求未通過機構政策設定的自訂限制驗證,要求就會失敗,並向呼叫端傳回錯誤。
後續步驟
進一步瞭解其他 Dataproc 安全性功能: