適用於:
Azure Data Factory
Azure Synapse Analytics
提示
Data Factory in Microsoft Fabric 是下一代的 Azure Data Factory,擁有更簡單的架構、內建 AI 及新功能。 如果你是資料整合新手,建議先從 Fabric Data Factory 開始。 現有的 ADF 工作負載可升級至 Fabric,以存取資料科學、即時分析與報告等新能力。
本文說明 Azure Data Factory 中資料移動服務所用的基本安全基礎架構,以協助保護您的資料安全。 資料工廠管理資源建立在 Azure 安全基礎架構上,並採用 Azure 提供的所有可能的安全措施。
在 Data Factory 方案中,您可以建立一或多個資料 管線。 管線是共同執行一項工作的多個活動邏輯群組。 這些管線位於建立 Data Factory 的區域中。
儘管 Data Factory 僅適用於某些區域,資料移動服務仍全球適用,以確保資料合規、有效率,且網路輸出成本降低。
Azure Data Factory 包括 Azure Integration Runtime 與自建 Integration Runtime,不會儲存任何暫時資料、快取資料或日誌,唯一儲存的是雲端資料儲存的連結服務憑證,並且這些憑證是透過使用憑證加密的。 您可以使用 Data Factory 來建立資料導向工作流程,藉由使用其他區域或內部部署環境中的計算服務,協調所支援資料存放區之間的資料移動和資料處理。 你也可以透過 SDK 和 Azure 監視器 監控和管理工作流程。
Data Factory 已通過下列各項規範的認證:
| CSA STAR 認證 |
|---|
| ISO 20000-1:2011 |
| ISO 22301:2012 |
| ISO 27001:2013 |
| ISO 27017:2015 |
| ISO 27018:2014 |
| ISO 9001:2015 |
| SOC 1、2、3 |
| HIPAA BAA |
| HITRUST |
如果您對Azure合規及Azure如何保障自身基礎設施有興趣,請造訪Microsoft Trust Center。 最新的Azure合規服務清單,請查閱 - https://aka.ms/AzureCompliance。
在本文中,我們會檢閱下列兩個資料移動案例中的安全性考量︰
- 雲端案例:在此案例中,可透過網際網路公開存取您的來源和目的地。 這些服務包括管理雲端儲存服務,如 Azure 儲存體、Azure Synapse Analytics、Azure SQL Database、Azure Data Lake Store、Amazon S3、Amazon Redshift、SaaS 服務如 Salesforce,以及網路協定如 FTP 和 OData。 在支援的資料存放區和格式中,尋找支援的資料來源完整清單。
- 混合式案例:在此案例中,您的來源或目的地是位於防火牆後方或在內部部署公司網路內。 或者,資料存放區是在私人網路或虛擬網路 (最常見的來源) ,而且無法公開存取。 裝載在虛擬機器上的資料庫伺服器也屬於此案例的涵蓋範圍。
注意
我們建議你使用 Azure Az PowerShell 模組來與 Azure 互動。 要開始,請參考 安裝 Azure PowerShell。 想了解如何遷移到 Az PowerShell 模組,請參考 Migrate Azure PowerShell from AzureRM to Az。
雲端案例
保護資料存放區認證
- 將加密憑證儲存在Azure Data Factory管理的儲存庫。 Data Factory 利用由 Microsoft 管理的憑證對資料儲存憑證進行加密,以幫助保護它們。 這些憑證每隔兩年會輪替一次 (包括憑證更新和憑證移轉)。 欲了解更多關於Azure 儲存體安全性的資訊,請參見 Azure 儲存體安全概述。
- 將憑證儲存在 Azure Key Vault 中。 你也可以把資料儲存的憑證存在 Azure Key Vault。 Data Factory 會在活動執行期間擷取認證。 更多資訊請參閱Azure Key Vault中的Store憑證。
將應用程式秘密集中儲存在 Azure Key Vault 中,可以讓你控制它們的分布。 金鑰保存庫 大幅降低了機密意外外洩的機率。 你可以不把 連接字串 存進應用程式的程式碼,而是安全地存放在 金鑰保存庫。 您的應用程式可以使用 URI 安全地存取其所需的資訊。 這些 URI 可讓應用程式擷取特定版本的祕密。 不需要寫自訂程式碼來保護 金鑰保存庫 中儲存的任何秘密資訊。
傳輸中資料加密
如果雲端資料存放區支援 HTTPS 或 TLS,則 Data Factory 中資料移動服務與雲端資料存放區之間的所有資料傳輸,都會透過安全通道 HTTPS 或 TLS。
注意
所有與 Azure SQL Database 及 Azure Synapse Analytics 的連線,在資料傳輸至資料庫時都需要加密(SSL/TLS)。 當你用 JSON 撰寫管線時,請在連接字串中加入加密屬性,並設定為 true。 Azure 儲存體的話,你可以在連接字串裡用HTTPS。
注意
若要在從 Oracle 移動資料時啟用在傳輸過程中進行加密,請遵循下列其中一個選項:
- 在 Oracle 伺服器上,移至 Oracle 進階安全性 (OAS) 並設定加密設定,其支援三重 DES 加密 (3DES) 和進階加密標準 (AES),請參閱這裡的詳細資料。 ADF 會自動協商加密方法,以使用建立 Oracle 連線時您在 OAS 中設定的方法。
- 在 ADF 中,你可以在 連接字串(連結服務)中加入 EncryptionMethod=1。 這將使用 SSL/TLS 作為加密方法。 若要使用這個方法,您需要在 Oracle 伺服器端的 OAS 中停用非 SSL 加密設定,以避免加密衝突。
注意
使用的 TLS 版本為 1.2。
待用資料加密
有些資料存放區支援資料靜態加密。 建議您為這些資料存放區啟用資料加密機制。
Azure Synapse Analytics
Azure Synapse Analytics 中的 透明資料加密(TDE)透過即時加密與解密靜態資料,幫助防範惡意活動的威脅。 用戶端無法察覺此行為。 欲了解更多資訊,請參閱在 Azure Synapse Analytics 中保護資料庫。
Azure SQL Database
Azure SQL Database 也支援透明資料加密(TDE),透過即時加密與解密資料,無需更改應用程式,有助於防範惡意活動的威脅。 用戶端無法察覺此行為。 欲了解更多資訊,請參閱 SQL Database 及 Data Warehouse 的透明資料加密。
Azure Data Lake Store
Azure Data Lake Store 也提供帳號中資料的加密服務。 啟用後,資料湖 Store 會在持久化前自動加密資料,並在擷取前解密,讓存取資料的用戶端是透明的。 欲了解更多資訊,請參閱 Azure Data Lake 儲存中的安全性。
Azure Blob 儲存體和 Azure 資料表儲存體
Azure Blob 儲存和 Azure 表格儲存支援儲存服務加密(SSE),該加密會在資料持久化前自動加密,並在取回前解密。 欲了解更多資訊,請參閱 Azure 儲存體 服務的靜態資料加密。
Amazon S3
Amazon S3 同時支援用戶端和伺服器的資料靜態加密。 如需詳細資訊,請參閱使用加密來保護資料 (英文)。
Amazon Redshift
Amazon Redshift 支援叢集靜態數據加密。 如需詳細資訊,請參閱 Amazon Redshift 資料庫加密 (英文)。
Salesforce
Salesforce 支援「Shield 平台加密」,可加密所有檔案、附件和自訂欄位。 如需詳細資訊,請參閱了解 Web 伺服器 OAuth 驗證流程 (英文)。
混合式案例
混合式案例需要在內部部署網路、Azure 虛擬網路內或 Amazon 虛擬私有雲內安裝自我裝載 Integration Runtime。 自行架設的整合執行階段必須能夠存取本機資料存放區。 如需自我裝載整合執行階段的詳細資訊,請參閱如何建立和設定自我裝載整合執行階段。
命令通道可允許 Data Factory 中的資料移動服務與自我裝載整合執行階段之間進行通訊。 此通訊包含活動的相關資訊。 資料通道會用來在內部部署資料存放區與雲端資料存放區之間傳輸資料。
內部部署資料存放區認證
憑證可以儲存在資料工廠中,或者在執行時由資料工廠從 Azure Key Vault 中引用。 如果將認證儲存在資料處理站中,系統會在自我裝載整合執行階段上以加密方式儲存。
在本機儲存認證。 如果您直接使用 Set-AzDataFactoryV2LinkedService cmdlet 搭配連接字串和 JSON 中內嵌的認證,則連結服務會被加密並儲存在自我代管整合執行時間中。 在這種情況下,憑證會經過極為安全的 Azure 後端服務,最後傳送到自架整合機器,並在那裡進行加密與儲存。 自架整合執行時使用 Windows DPAPI 加密敏感資料與憑證資訊。
將憑證儲存在 Azure Key Vault 中。 你也可以把資料儲存的憑證存在 Azure Key Vault。 Data Factory 會在活動執行期間擷取認證。 更多資訊請參閱Azure Key Vault中的Store憑證。
將憑證儲存在本地,而不是透過 Azure 後端傳遞至自架整合執行環境。 如果您希望在自行架設的整合執行階段中本地加密並儲存認證資訊,而不必透過資料工廠後端處理認證資訊,請遵循 在 Azure Data Factory 中為內部部署資料庫加密認證資訊的步驟。 所有連接器皆支援此選項。 自架整合執行時使用 Windows DPAPI 加密敏感資料與憑證資訊。
使用 New-AzDataFactoryV2LinkedServiceEncryptedCredential Cmdlet 來加密連結服務認證和加密連結服務中的機密詳細資料。 接著你可以利用回傳的 JSON(連接字串 中包含 EncryptedCredential元素)透過 Set-AzDataFactoryV2LinkedService cmdlet 建立連結服務。
在自我裝載整合執行階段上加密連結服務時所使用的連接埠
根據預設,啟用從內部網路進行遠端存取時,PowerShell 會在具有自我裝載整合執行階段的電腦上使用連接埠 8060 來保護通訊安全。 如有需要,可從設定分頁的Integration Runtime 設定管理員更改此埠:
傳輸中加密
所有資料傳輸皆透過安全通道 HTTPS 及 TLS over TCP,以防止與 Azure 服務通訊時的中間人攻擊。
你也可以使用
Azure 虛擬網路 是你在雲端網路的邏輯表示。 您可以透過設定 IPsec VPN(站點到站點)或 ExpressRoute(私人對等互連),將內部部署網路連接至您的虛擬網路。
下表根據混合式資料移動的不同來源和目的地位置組合,摘要說明網路和自我裝載整合執行階段組態的建議事項。
| 來源 | 目的地 | 網路組態 | 整合執行階段設定 |
|---|---|---|---|
| 內部部署 | 部署在虛擬網路中的虛擬機器和雲端服務 | IPsec VPN (點對站或站對站) | 自架整合執行時應安裝在虛擬網路中的 Azure 虛擬機上。 |
| 內部部署 | 部署在虛擬網路中的虛擬機器和雲端服務 | ExpressRoute (私人對等互連) | 自架整合執行時應安裝在虛擬網路中的 Azure 虛擬機上。 |
| 內部部署 | 基於 Azure 且擁有公開端點的服務 | ExpressRoute(Microsoft 對等) | 自架整合執行環境可安裝於本地或 Azure 虛擬機上。 |
以下圖片展示了利用 ExpressRoute 與 IPsec VPN(搭配 Azure 虛擬網路)在本地資料庫與 Azure 服務間移動資料的自架整合執行時:
快速路由
IPsec VPN
防火牆組態與 IP 位址允許清單設定
注意
您可能需要依個別資料來源所需,在公司防火牆層級管理連接埠或設定網域的允許清單。 此表格僅以 Azure SQL Database、Azure Synapse Analytics 和 Azure Data Lake Store 作為範例。
注意
關於透過Azure Data Factory的資料存取策略,請參見 此文章。
內部部署/私人網路的防火牆需求
在企業中,公司防火牆會在組織的中央路由器上執行。 Windows 防火牆會以精靈的形式,在安裝自我裝載 Integration Runtime 的本機上執行。
下表提供公司防火牆的輸出連接埠和網域需求:
| 網域名稱 | 輸出連接埠 | 描述 |
|---|---|---|
*.servicebus.windows.net |
443 | 自我裝載整合執行階段進行互動式撰寫所需。 |
{datafactory}.{region}.datafactory.azure.net或 *.frontend.clouddatahub.net |
443 | 自我裝載整合執行階段連線至 Data Factory 服務所需。 對於新建立的 Data Factory,請從您的自我裝載 Integration Runtime 金鑰中取得完整網域名稱,其格式為 {datafactory}.{region}.datafactory.azure.net。 對於舊版 Data Factory,如果您在自我裝載整合執行階段金鑰中未看到完整網域名稱,請改用 *.frontend.clouddatahub.net。 |
download.microsoft.com |
443 | 自我裝載整合執行階段所需,以用於下載更新。 如果您已停用自動更新,您可以略過設定此網域。 |
*.core.windows.net |
443 | 當您使用分段複製功能時,自我裝載 Integration Runtime會使用此項目連線至 Azure 儲存體帳戶。 |
*.database.windows.net |
1433 | 只有在你從Azure SQL Database或Azure Synapse Analytics複製時才需要,否則為可選。 使用分階段複製功能,在不開啟埠 1433 的情況下,將資料複製到 SQL Database 或 Azure Synapse Analytics。 |
*.azuredatalakestore.netlogin.microsoftonline.com/<tenant>/oauth2/token |
443 | 只有當您從 Azure Data Lake 儲存體中複製或複製到該儲存體時才需要,否則是可選的。 |
注意
您可能需要依個別資料來源所需,在公司防火牆層級管理連接埠或設定網域的允許清單。 此表格僅以 Azure SQL Database、Azure Synapse Analytics 和 Azure Data Lake Store 作為範例。
下表提供 Windows 防火牆的入站埠需求:
| 輸入連接埠 | 描述 |
|---|---|
| 8060(TCP) | 根據 PowerShell 加密指令(如 在 Azure Data Factory 中為內部部署資料存放區加密憑證 中所描述)和憑證管理應用程式所需,這些應用程式會在自我寄宿的整合執行時間上安全地設定內部部署資料存放區的憑證。 |
資料存放區中的 IP 組態與允許清單設定
某些雲端資料存放區也要求您允許存取該存放區之機器的 IP 位址。 請確保自架設整合執行階段機器的 IP 位址已被允許或在防火牆中正確設定。
下列雲端資料存放區要求您允許自我裝載整合執行階段機器的 IP 位址。 在這些資料存放區中,有些可能預設不需要允許清單。
常見問題集
是否可以跨不同的資料工廠共用自架整合執行階段?
是。 這裡提供更多詳細資料。
自我裝載整合執行階段需要什麼連接埠才能運作?
自我裝載整合執行階段會建立 HTTP 型連線來存取網際網路。 自我裝載整合執行階段必須開啟傳出連接埠 443,才能建立此連線。 針對認證管理員應用程式,請只在機器層級 (而非公司防火牆層級) 開啟輸入連接埠 8060。 如果 Azure SQL Database 或 Azure Synapse Analytics 作為來源或目的地,你也需要開啟埠 1433。 如需詳細資訊,請參閱防火牆設定及 IP 位址允許清單設定一節。
相關內容
有關 Azure Data Factory 的複製活動效能資訊,請參閱 複製活動效能與調校指南。