此架構顯示安全的研究環境,其旨在讓研究人員在更高層級的控制與資料保護下存取機密資料。 本文適用於受法規合規性或其他嚴格安全性需求約束的組織。
架構
下載此架構的 Visio 檔案。
資料流程
資料擁有者會將資料集上傳至公用 Blob 儲存體帳戶。 資料會使用由 Microsoft 所管理的金鑰加密。
Azure Data Factory 會使用觸發程式,開始將上傳的資料集複製到具有安全性控制的另一個儲存體帳戶特定位置 (匯入路徑)。 儲存體帳戶只能透過私人端點來連線。 且服務主體可存取的權限有限。 Data Factory 會刪除原始副本,使資料集不可變。
研究人員使用 Azure 虛擬桌面 作為特殊權限跳躍方塊,透過串流應用程式存取安全環境。
安全儲存體帳戶中的資料集會顯示在安全網路環境中佈建的資料科學 VM,以供研究工作使用。 大部分的資料準備都是在這些 VM 上完成的。
安全環境具有 Azure Machine Learning 和 Azure Synapse Analytics,可透過私人端點存取資料集。 這些平臺可用來定型、部署、自動化及管理機器學習模型,或使用 Azure Synapse Analytics 服務。 此時會建立符合法規指導方針的模型。 所有模型資料會透過移除個人資訊取消識別。
模型或已取消識別的資料會儲存到安全儲存體上不同的位置 (匯出路徑)。 將新資料新增至匯出路徑時,即會觸發邏輯應用程式。 在此架構中,邏輯應用程式在安全環境以外,因為資料不會傳送至邏輯應用程式。 唯一的方式是傳送通知並啟動手動核准程序。
應用程式會啟動核准程序,要求檢閱已排入佇列以匯出的資料。 手動檢閱者可確保不會匯出機密資料。 檢閱程序之後,資料受到核准或拒絕。
注意
如果外流時不需要核准步驟,可以省略邏輯應用程式步驟。
如果已核准取消識別的資料,則會傳送至 Data Factory 執行個體。
Data Factory 會將資料移至個別容器中的公用儲存體帳戶,讓外部研究人員能夠存取其匯出的資料和模型。 或者,您可以在較低的安全性環境中佈建另一個儲存體帳戶。
元件
此架構是由數個 Azure 服務所組成,而這些服務會根據需求調整資源。 這些服務及其角色如下所述。 如需產品文件的連結以開始使用這些服務,請參閱「後續步驟」。
核心工作負載元件
以下是移動和處理研究資料的核心元件。
Azure 資料科學虛擬機器 (DSVM):已設定用於資料分析和機器學習工具的 VM。 當要使用 PaaS 服務不支援的特定套件或工具,例如 MATLAB 或 SAS 時,就會使用 DSVM。 從安全性和易於使用的觀點而言,支援時偏好使用 AML 和其他 PaaS 選項。
Azure Machine Learning:用來定型、部署、自動化和管理機器學習模型,以及管理機器學習計算資源的配置和使用。 AML 是 Jupyter Notebook 用於開發的所選工具。
Azure Machine Learning Compute:用來定型和測試機器學習和 AI 模型的節點叢集。 計算會根據自動調整選項,視需要配置。 Visual Studio Code (VS Code) 可以從虛擬桌面部署為串流應用程式,並連線到 AML 計算以進行替代開發環境。
Azure Blob 儲存體:有兩個執行個體。 公用執行個體可用來暫時儲存資料擁有者上傳的資料。 此外,它會在建立個別容器的模型之後儲存去識別化資料。 第二個是私用執行個體。 它會從定型指令碼所使用的 Machine Learning 接收定型和測試資料集。 儲存體會掛接為每個 Machine Learning Compute 叢集節點的虛擬磁碟機。
Azure Data Factory:自動在不同安全性層級的儲存體帳戶之間移動資料,以確保職責區分。
Azure Synapse:巨量資料的分析工具,以及用於資料整合的管線和 ETL/ELT。 Synapse 也是執行 Apache Spark 工作負載的慣用服務。
Azure 虛擬桌面可做為跳躍方塊,以視需要使用串流應用程式和完整桌面來存取安全環境中的資源。 或者,您可以使用 Azure Bastion。 但是,請清楚地了解這兩個選項之間的安全性控制項差異。 虛擬桌面有一些優點:
- 能夠串流 Microsoft Visual Studio Code 之類的應用程式,針對機器學習計算資源執行筆記本。
- 限制複製、貼上和螢幕擷取的功能。
- 支援對 DSVM 的 Microsoft Entra 驗證。
Azure Logic Apps 提供自動化的低程式碼工作流程,以開發手動核准程序的觸發程序和 發行版本部分。
態勢管理元件
這些元件會持續監視工作負載及其環境的態勢。 目的是在發現風險之後立即探索和降低風險。
適用於雲端的 Microsoft Defender 可用來評估實作的整體安全性狀態,並提供法規合規性證明機制。 可以提早探索先前在稽核或評量期間發現的問題。 使用功能來追蹤進度,例如安全分數和合規性分數。 這是驗證合規性的重要工具。
Microsoft Sentinel 是安全性資訊與事件管理 (SIEM) 和安全性協調流程、自動化及回應 (SOAR) 解決方案。 您可以集中檢視來自各種來源的記錄和警示,並利用進階 AI 和安全性分析來偵測、搜捕、預防及回應威脅。 這可提供寶貴的安全性深入解析,以確保與工作區相關聯的流量和活動,確保活動如預期般運作。
Azure 監視器可在整個環境中提供可檢視性。 檢視大多數 Azure 資源的計量、活動記錄和診斷記錄,而無需新增設定。 管理工具 (例如適用於雲端的 Microsoft Defender 中的工具) 也會將記錄資料發送至 Azure 監視器。
控管元件
- Azure 原則有助於強制執行組織標準及大規模評估合規性。
替代項目
- 此解決方案會使用 Data Factory 將資料移至個別容器中的公用儲存體帳戶,讓外部研究人員能夠存取其匯出的資料和模型。 或者,您可以在較低的安全性環境中佈建另一個儲存體帳戶。
- 此解決方案使用 Azure 虛擬桌面做為跳躍方塊,以視需要使用串流應用程式和完整桌面來存取安全環境中的資源。 或者,您可以使用 Azure Bastion。 但是,虛擬桌面有一些優點,包括串流應用程式、限制複製/貼上和螢幕擷取,以及支援 AAC 驗證。 您也可以考慮在本機設定點對站 VPN 進行離線定型。 這也有助於節省針對工作站擁有多個 VM 的成本。
- 為了保護待用資料,此解決方案會使用強式密碼編譯,以 Microsoft 管理的密鑰來加密所有 Azure 儲存體。 或者,您可以使用客戶自控金鑰。 金鑰必須儲存在受控金鑰存放區中。
案例詳細資料
此案例結合了需要存取資料,但不允許儲存或傳輸資料的個人存取受管制和高敏感私人資料。
- 第三方資料科學家需要完整存取資料來定型並匯出模型,而無須讓任何專屬或受保護的資料離開環境。
- 上傳到環境後,存取必須隔離,甚至不允許資料擁有者和監管人存取該資料。
- 需要稽核線索才能將任何匯出傳出環境,以確保只有匯出模型。
潛在使用案例
此架構最初是針對具有健康保險流通與責任法案 (HIPAA) 要求的高等教育研究機構所建立。 不過,此設計可用於任何需要隔離資料以取得研究觀點的產業。 這些範例包含:
- 根據國家標準暨技術研究院 (NIST) 需求處理受管制資料的產業
- 與內部和外部研究人員共同作業的醫療中心
- 銀行與金融
透過遵守指引,您可以保持研究資料的完整控制權、區分職責,及符合嚴格的法規合規性標準,同時在涉及研究導向工作負載的資料擁有者、研究人員和核准者典型角色之間提供共同作業。
考量
這些考量能實作 Azure Well-Architected Framework 的支柱,其為一組指導原則,可以用來改善工作負載的品質。 如需更多資訊,請參閱 Microsoft Azure 結構完善的架構。
安全性
安全性可提供保證,以避免刻意攻擊和濫用您寶貴的資料和系統。 如需詳細資訊,請參閱安全性支柱的概觀。
此架構的主要目標是提供安全且受信任的研究環境,嚴格限制從安全區域外流資料。
網路安全性
用來儲存、測試及定型研究資料集的 Azure 資源會佈建於安全的環境中。 該環境是一個 Azure 虛擬網路,其具有網路安全性群組 (NSG) 規則來限制存取,主要為:
對公用網際網路和虛擬網路內的傳入和傳出存取。
在特定服務和連接埠之間存取。 例如,此架構會封鎖所有連接埠範圍,但 Azure 服務所需的連接埠範圍除外 (例如 Azure 監視器)。 您可以在虛擬網路服務標籤中找到服務標籤和對應服務的完整清單。
此外,系統接收在連接埠上使用 Azure 虛擬桌面存取虛擬網路以核准存取方法,但會拒絕所有其他流量。 相較於此環境,另一個虛擬網路 (使用虛擬桌面) 相對開放。
安全環境中的主要 Blob 儲存體已關閉公用網際網路。 它只能在虛擬網路內透過私人端點連線和 Azure 儲存體防火牆存取。 它用來限制用戶端連線至 Azure 檔案共用的網路。
此架構會針對安全環境中的主要資料存放區使用認證型驗證。 在這種情況下,訂用帳戶識別碼和權杖授權等連線資訊會儲存在密鑰保存庫中。 另一個選項是建立身分識別型資料存取,其中您的 Azure 帳戶會用來確認您是否具有儲存體服務的存取權。 在身份識別型資料的存取案例中,系統不會保存任何身份驗證認證。 如需如何使用身分識別型資料存取的詳細資料,請參閱「使用身分識別型資料存取連線至儲存體」。
計算叢集只能透過使用 Azure Private Link 生態系統和服務/私人端點在虛擬網路內通訊,而不是使用公用 IP 進行通訊。 請確定您已啟用 [沒有公用 IP]。 如需此功能的詳細資料,其目前為預覽狀態 (截至 2022 年 3 月 7 日),請參閱「計算執行個體的無公用 IP」。
安全環境會使用 Azure Machine Learning 計算,以透過私人端點存取資料集。 此外,Azure 防火牆可用來控制來自 Azure Machine Learning 計算的輸出存取。 若要了解如何設定 Azure 防火牆來控制位於機器學習工作區的 Azure Machine Learning 計算存取,請參閱「設定輸入和輸出網路流量」。
若要了解保護 Azure Machine Learning 環境的方法之一,請參閱部落格文章:保護 Azure Machine Learning 服務 (AMLS) 環境。
對於無法使用私人端點或提供具狀態封包檢查的 Azure 服務,請考慮使用 Azure 防火牆或協力廠商網路虛擬設備 (NVA)。
身分識別管理
Blob 儲存體存取會透過 Azure 角色型存取控制項 (RBAC) 進行。
Azure 虛擬桌面支援對 DSVM 的 Microsoft Entra 驗證。
Data Factory 會使用受控身分識別來存取 Blob 儲存體的資料。 DSVM 也會使用受控身分識別進行補救工作。
資料安全性
為了保護待用資料,系統會使用強式密碼,以 Microsoft 管理的密鑰來加密所有 Azure 儲存體。
或者,您可以使用客戶自控金鑰。 金鑰必須儲存在受控金鑰存放區中。 在此架構中,Azure Key Vault 會部署在安全的環境中,以儲存加密密鑰和憑證等秘密。 安全虛擬網路中的資源會透過私人端點存取 Key Vault。
治理考量
啟用 Azure 原則以強制執行標準並提供自動化補救,使資源符合特定原則的合規性。 該原則可以套用至專案的訂用帳戶或管理群組層級作為單一原則或法規計畫的一部分。
例如,在此架構中,Azure 原則客體設定會套用至範圍中的所有 VM。 此原則可以稽核資料科學 VM 的作業系統和機器組態。
VM 映像
資料科學 VM 會執行自訂基礎映像。 若要建置基礎映像,強烈建議使用 Azure Image Builder 等技術。 如此一來,您可以建立可重複的映像,並在需要時進行部署。
基礎映像可能需要更新,例如其他二進位檔。 這些二進位檔應上傳至公用 Blob 儲存體,並流經安全環境,和資料擁有者上傳的資料集一樣。
其他考量
大部分的研究解決方案都是暫時性工作負載,不需要長期使用。 此架構設計為具有可用性區域的單一區域部署。 如果商務需求要求更高的可用性,請在多個區域中複寫此架構。 您需要其他元件,例如全球負載平衡器和散發者,才能將流量路由傳送至這些區域。 在復原策略中,強烈建議使用 Azure Image Builder 擷取和建立自訂基礎映像的複本。
資料科學 VM 的大小和類型應適合執行的工作型態。 此架構旨在支援單一研究專案,而可延展性是透過調整 VM 的大小和類型,以及針對 Azure Machine Learning 可用的計算資源所做的選擇來達成。
成本最佳化
成本最佳化是關於考慮如何減少不必要的費用,並提升營運效率。 如需詳細資訊,請參閱成本最佳化支柱的概觀。
DSVM 的成本取決於基礎 VM 系列的選擇。 因為是暫時的工作負載,因此建議邏輯應用程式資源採用使用量方案。 使用 Azure 定價計算機,根據所需資源的估計大小來預估成本。 確保未使用環境時關閉環境,是重要的成本最佳化和安全性考慮。
參與者
本文由 Microsoft 維護。 原始投稿人如下。
主要作者:
- Clayton Barlow | 資深 Azure 專家
下一步
- Microsoft 資料科學虛擬機器 (DSVM)
- 什麼是 Azure Machine Learning 服務?
- Azure Machine Learning Compute
- Azure Blob 儲存體簡介
- Azure Data Factory 簡介
- Azure 虛擬桌面
- 適用於雲端的 Microsoft Defender
- Microsoft Sentinel
- Azure 監視器
- Azure 原則
- Azure 原則客體設定