教學課程:設定大規模存取 Microsoft Purview MSI 的數據源
若要掃描數據源,Microsoft Purview 需要存取它們。 本教學課程適用於 Azure 訂用帳戶擁有者和Microsoft Purview 數據源管理員。 它可協助您識別必要的存取權,並針對跨 Azure 數據源的 Microsoft Purview 設定必要的驗證和網路規則。
在本教學課程系列的第 2 部分中,您將:
- 找出您的數據源,並準備數據源訂用帳戶清單。
- 執行腳本,以在 Azure 中跨數據源設定任何遺漏的角色型訪問控制 (RBAC) 或必要的網路設定。
- 檢閱輸出報表。
必要條件
- 數據源所在的 Azure 訂用帳戶。 如果您沒有 Azure 訂用帳戶,請在開始前 建立免費帳戶 。
- Microsoft Purview 帳戶。
- 每個訂用帳戶中具有數據源的 Azure 金鑰保存庫 資源,例如 Azure SQL Database、Azure Synapse Analytics 或 Azure SQL 受控執行個體。
- Microsoft Purview MSI 組態腳本。
注意事項
Microsoft Purview MSI 組態腳本僅適用於 Windows。 此腳本目前支援 Microsoft Purview 受控識別 (MSI) 。
重要事項
強烈建議您先測試並確認腳本在 Azure 環境中執行的所有變更,再將其部署至生產環境。
準備數據源的 Azure 訂用帳戶清單
執行腳本之前,請先建立 .csv 檔案 (例如「C:\temp\Subscriptions.csv) 四個數據行:
欄名稱 | 描述 | 範例 |
---|---|---|
SubscriptionId |
數據源的 Azure 訂用帳戶標識碼。 | 12345678-aaaa-bbbb-cccc-1234567890ab |
KeyVaultName |
部署在數據源訂用帳戶中的現有金鑰保存庫名稱。 | ContosoDevKeyVault |
SecretNameSQLUserName |
現有 Azure 金鑰保存庫 密碼的名稱,其中包含可使用 Microsoft Entra 驗證登入 Azure Synapse、Azure SQL 資料庫或 Azure SQL 受控執行個體 的 Microsoft Entra 用戶名稱。 | ContosoDevSQLAdmin |
SecretNameSQLPassword |
現有 Azure 金鑰保存庫 密碼的名稱,其中包含可使用 Microsoft Entra 驗證登入 Azure Synapse、Azure SQL 資料庫或 Azure SQL 受控執行個體 的 Microsoft Entra 用戶密碼。 | ContosoDevSQLPassword |
範例 .csv 檔案:
注意事項
如有需要,您可以更新程序代碼中的檔名和路徑。
執行腳本並安裝必要的 PowerShell 模組
請遵循下列步驟,從您的 Windows 電腦執行文稿:
將 Microsoft Purview MSI 組態 腳本下載到您選擇的位置。
在您的電腦上,於 Windows 任務列上的搜尋方塊中輸入 PowerShell 。 在搜尋清單中,選取並按住 (或以滑鼠右鍵按兩下 ) Windows PowerShell,然後選取 [以系統管理員身分執行]。
在 PowerShell 視窗中,輸入下列命令。 (將 取代
<path-to-script>
為擷取腳本檔案的資料夾路徑。)dir -Path <path-to-script> | Unblock-File
輸入下列命令以安裝 Azure Cmdlet:
Install-Module -Name Az -AllowClobber -Scope CurrentUser
如果您看到需要 NuGet 提供者的提示才能繼續,請輸入 Y,然後選取 Enter。
如果您看到 [ 未受信任的存放庫] 提示,請輸入 A,然後選取 Enter。
重複上述步驟來安裝
Az.Synapse
和AzureAD
模組。
可能需要一分鐘的時間,PowerShell 才能安裝必要的模組。
收集執行文稿所需的其他數據
執行 PowerShell 腳本以確認資料源訂閱的整備程度之前,請先取得下列自變數的值,以用於腳本中:
AzureDataType
:選擇下列任一選項作為您的數據源類型,以檢查訂用帳戶中數據類型的整備程度:BlobStorage
AzureSQLMI
AzureSQLDB
ADLSGen2
ADLSGen1
Synapse
All
PurviewAccount
:您現有的Microsoft Purview 帳戶資源名稱。PurviewSub
:部署 Microsoft Purview 帳戶的訂用帳戶標識碼。
確認您的許可權
請確定您的使用者具有下列角色和權限:
您至少需要下列許可權,才能在 Azure 環境中執行文稿:
角色 | 範圍 | 為什麼需要它? |
---|---|---|
全域讀取者 | Microsoft Entra 租使用者 | 若要讀取 Azure SQL 管理員 用戶群組成員資格和 Microsoft Purview MSI |
應用程式管理員 | Microsoft Entra 租使用者 | 將目錄讀取者角色指派給 Azure SQL 受控實例 |
投稿者 | 建立 Microsoft Purview 帳戶的訂用帳戶或資源群組 | 若要讀取 Microsoft 帳戶資源,並建立 金鑰保存庫 資源和秘密 |
擁有者或使用者存取系統管理員 | Azure 數據源所在的管理群組或訂用帳戶 | 指派 RBAC |
投稿者 | Azure 數據源所在的管理群組或訂用帳戶 | 設定網路組態 |
SQL 管理員 (Microsoft Entra 驗證) | Azure SQL 伺服器實例或受控實例 Azure SQL | 將 db_datareader 角色指派給 Microsoft Purview |
存取您的 Azure 金鑰保存庫 | 存取 Azure SQL 資料庫、Azure SQL 受控執行個體 或 Azure Synapse 驗證的取得/列出 金鑰保存庫 密碼 |
執行用戶端整備腳本
完成下列步驟來執行文稿:
使用下列命令移至文稿的資料夾。 將取代
<path-to-script>
為解壓縮檔案的資料夾路徑。cd <path-to-script>
執行下列命令來設定本機計算機的執行原則。 當系統提示您變更執行原則時,請針對 [全部是] 輸入 A。
Set-ExecutionPolicy -ExecutionPolicy Unrestricted
使用下列參數執行腳本。
DataType
取代、PurviewName
和SubscriptionID
佔位元。.\purview-msi-configuration.ps1 -AzureDataType <DataType> -PurviewAccount <PurviewName> -PurviewSub <SubscriptionID>
當您執行命令時,彈出視窗可能會出現兩次,提示您使用 Microsoft Entra 認證登入 Azure 並 Microsoft Entra ID。
建立報告可能需要幾分鐘的時間,視環境中的 Azure 訂用帳戶和資源數目而定。
如果金鑰保存庫中的認證不相符,系統可能會提示您登入 Azure SQL 伺服器實例。 您可以提供認證,或選 取 Enter 略過特定伺服器。
程式完成之後,檢視輸出報表以檢閱變更。
其他相關資訊
腳本支援哪些數據源?
文稿目前支援下列資料來源:
- Azure Blob 儲存體 (BlobStorage)
- Azure Data Lake Storage Gen2 (ADLSGen2)
- Azure Data Lake Storage Gen1 (ADLSGen1)
- Azure SQL 資料庫 (AzureSQLDB)
- Azure SQL 受控執行個體 (AzureSQLMI)
- Azure Synapse (Synapse) 專用集區
當您執行文稿時,您可以選擇所有這些資料來源或任一數據來源作為輸入參數。
腳本中包含哪些設定?
此文稿可協助您自動完成下列工作:
Azure Blob 儲存體 (BlobStorage)
- RBAC。 將 Azure RBAC 讀者 角色指派給選取範圍上的 Microsoft Purview MSI。 確認指派。
- RBAC。 將 Azure RBAC 記憶體 Blob 資料讀取器 角色指派給所選範圍下每個訂用帳戶中的 Microsoft Purview MSI。 確認指派。
- 聯網。 報告是否為記憶體建立私人端點,並啟用 Blob 記憶體。
- 服務端點。 如果私人端點已關閉,請檢查服務端點是否已開啟,並啟用 [允許受信任Microsoft服務存取此記憶體帳戶] 。
Azure Data Lake Storage Gen2 (ADLSGen2)
- RBAC。 將 Azure RBAC 讀者 角色指派給選取範圍上的 Microsoft Purview MSI。 確認指派。
- RBAC。 將 Azure RBAC 記憶體 Blob 資料讀取器 角色指派給所選範圍下每個訂用帳戶中的 Microsoft Purview MSI。 確認指派。
- 聯網。 報告是否為記憶體建立私人端點,並啟用 Blob 記憶體。
- 服務端點。 如果私人端點已關閉,請檢查服務端點是否已開啟,並啟用 [允許受信任Microsoft服務存取此記憶體帳戶] 。
Azure Data Lake Storage Gen1 (ADLSGen1)
- 聯網。 確認服務端點已開啟,並啟用 [允許所有 Azure 服務存取此 Data Lake Storage Gen1 帳戶] Data Lake Storage。
- 權限。 將讀取/執行存取權指派給 Microsoft Purview MSI。 確認存取權。
Azure SQL 資料庫 (AzureSQLDB)
SQL Server 實例:
- 網路。 報告公用端點或私人端點是否已啟用。
- 防火牆。 如果私人端點關閉,請確認防火牆規則,並啟用 [允許 Azure 服務和資源存取此伺服器]。
- Microsoft Entra系統管理。 啟用 Azure SQL 資料庫的 Microsoft Entra 驗證。
SQL 資料庫:
- SQL 角色。 將 db_datareader 角色指派給 purview MSI Microsoft。
Azure SQL 受控執行個體 (AzureSQLMI)
SQL 受管理執行個體 伺服器:
網路。 確認公用端點或私人端點已開啟。 報告公用端點是否關閉。
ProxyOverride。 確認 Azure SQL 受控執行個體 已設定為 Proxy 或重新導向。
聯網。 更新 NSG 規則,以允許 AzureCloud 透過必要埠存取 SQL Server 實例:
- 重新導向:1433 和 11000-11999
或
- Proxy:3342
確認此存取權。
Microsoft Entra系統管理。 為 Azure SQL 受控執行個體 啟用 Microsoft Entra 驗證。
SQL 資料庫:
- SQL 角色。 將 db_datareader 角色指派給 purview MSI Microsoft。
Azure Synapse (Synapse) 專用集區
RBAC。 將 Azure RBAC 讀者 角色指派給選取範圍上的 Microsoft Purview MSI。 確認指派。
RBAC。 將 Azure RBAC 記憶體 Blob 資料讀取器 角色指派給所選範圍下每個訂用帳戶中的 Microsoft Purview MSI。 確認指派。
SQL Server (專用集區的實例) :
- 網路。 報告公用端點或私人端點是否開啟。
- 防火牆。 如果私人端點關閉,請確認防火牆規則,並啟用 [允許 Azure 服務和資源存取此伺服器]。
- Microsoft Entra系統管理。 啟用 Azure SQL 資料庫的 Microsoft Entra 驗證。
SQL 資料庫:
- SQL 角色。 將 db_datareader 角色指派給 purview MSI Microsoft。
後續步驟
在本教學課程中,您已瞭解如何:
- 識別必要的存取權,並針對跨 Azure 數據源Microsoft Purview 設定必要的驗證和網路規則。
移至下一個教學課程,以瞭解如何 在 Microsoft Purview 中註冊和掃描多個來源。