保護 Dataproc 環境安全至關重要,可確保機密資料安全無虞,並防止未經授權的存取行為。本文列出提升 Dataproc 安全防護機制的關鍵最佳做法,包括網路安全、Identity and Access Management、加密和安全叢集設定的建議。
網路安全
在私有虛擬私有雲中部署 Dataproc。為 Dataproc 叢集建立專屬的虛擬私有雲,將叢集與其他網路和公開網際網路隔離。
使用私人 IP。為保護 Dataproc 叢集免於暴露在公用網路上,請使用私人 IP 位址,以提升安全性和隔離性。
設定防火牆規則。實作嚴格的防火牆規則,控管 Dataproc 叢集的傳入和傳出流量。僅允許必要的通訊埠和通訊協定。
使用網路對等互連。如要加強隔離,請在 Dataproc 虛擬私有雲和其他機密虛擬私有雲之間建立虛擬私有雲網路對等互連,以控管通訊。
啟用元件閘道。建立叢集時啟用 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 中的密鑰。 Google Cloud
使用自訂組織限制。您可以使用自訂機構政策,允許或拒絕對 Dataproc 叢集執行特定作業。舉例來說,如果建立或更新叢集的要求未通過機構政策設定的自訂限制驗證,要求就會失敗,並向呼叫端傳回錯誤。
後續步驟
進一步瞭解其他 Dataproc 安全性功能: