分享方式:


在 Microsoft Purview 中聯機及管理 Azure Synapse Analytics 工作區

本文概述如何註冊 Azure Synapse Analytics 工作區。 它也會說明如何在 Microsoft Purview 中驗證 Azure Synapse Analytics 工作區並與其互動。 如需 Microsoft Purview 的詳細資訊,請閱讀 簡介文章

注意事項

在 Azure Synapse 工作區中 (先前稱為 SQL DW) 和專用 SQL 集區的專用 SQL 集區,您可以參考專用 SQL 集區 (SQL DW) 和 Azure Synapse 工作區中專用 SQL 集區之間的差異,以瞭解兩者之間的詳細差異。 目前Microsoft Purview 會針對先前的 SQL DW) 和專用 SQL 集區 (專用 SQL 集區提供個別的數據源:

支援的功能

元數據擷取 完整掃描 增量掃描 限域掃描 分類 加標籤 存取原則 譜系 資料共用 即時檢視
是 - 管線

目前不支援 Azure Synapse Analytics Lake 資料庫。

針對外部數據表,Azure Synapse 分析目前不會擷取這些數據表與其原始檔案的關聯性。

必要條件

登錄

下列程式描述如何使用 Microsoft Purview 治理入口網站,在 Microsoft Purview 中註冊 Azure Synapse Analytics 工作區。

只有在 Azure Synapse Analytics 工作區上具有至少數據讀取者角色,且也是 Microsoft Purview 中數據源管理員的使用者,才能註冊 Azure Synapse Analytics 工作區。

  1. 啟 Microsoft Purview 治理入口網站 ,然後選取您的 Microsoft Purview 帳戶。

    或者,移至 Azure 入口網站,搜尋並選取 Microsoft Purview 帳戶,然後選取 [Microsoft Purview 治理入口網站] 按鈕。

  2. 在左窗格中,選取 [ 來源]

  3. 選取 [登錄]

  4. [註冊來源] 底下,選取 [Azure Synapse Analytics (多個)

  5. 選取 [繼續]

    Microsoft Purview 中選取來源的螢幕快照,包括 Azure Synapse Analytics。

  6. 在 [ (Azure Synapse Analytics) ] 頁面上,執行下列動作:

    1. 針對 [名稱],輸入要列在數據目錄中的數據源名稱。

    2. 或者,針對 Azure 訂用帳戶,選擇要向下篩選的訂用帳戶。

    3. 針對 [工作區名稱],選取您正在使用的工作區。

      SQL 端點的方塊會根據您的工作區選取項目自動填入。

    4. 從清單中選取集合。

    5. 取 [註冊 ] 以完成註冊數據源。

    輸入有關 Azure Synapse 來源詳細數據的頁面螢幕快照。

掃描

使用下列步驟來掃描 Azure Synapse 分析工作區,以自動識別資產並分類您的數據。 如需一般掃描的詳細資訊,請參閱 Microsoft Purview 中的掃描和擷取。

  1. 設定用於列舉 專用無伺服器 資源的驗證。 此步驟可讓 Microsoft Purview 列舉您的工作區資產並執行掃描。
  2. 用許可權以掃描工作區的內容
  3. 確認您的 網路已設定為允許存取 Microsoft Purview

列舉驗證

使用下列程式來設定驗證。 您必須是擁有者或使用者存取系統管理員,才能新增指定的角色。

用於列舉專用 SQL 資料庫資源的驗證

  1. 在 Azure 入口網站 中,移至 Azure Synapse Analytics 工作區資源。
  2. 在左窗格中,選 存取控制 (IAM)
  3. 選取 [新增] 按鈕。
  4. 設定 讀者 角色,並輸入您的 Microsoft Purview 帳戶名稱,代表 MSI) (受控服務識別。
  5. 取 [儲存 ] 以完成角色指派。

如果您想要掃描先前已啟用 Azure Synapse 工作區功能的專用 SQL 集區 (先前的 SQL DW) ,如為先前稱為 SQL DW) 的專用 SQL (集區啟用 Azure Synapse 工作區功能中所述,以下是先前稱為 SQL DW (專用 SQL 集區所需的額外設定步驟) :

  1. 在 Azure 入口網站 中,移至與專用 SQL 集區相關聯的 SQL Server 資源, (先前稱為 SQL DW) 。
  2. 在左窗格中,選 存取控制 (IAM)
  3. 選取 [新增] 按鈕。
  4. 設定 讀者 角色,並輸入您的 Microsoft Purview 帳戶名稱,代表 MSI) (受控服務識別。
  5. 取 [儲存 ] 以完成角色指派。

注意事項

如果您打算在 Microsoft Purview 帳戶中註冊和掃描多個 Azure Synapse Analytics 工作區,您也可以從較高層級指派角色,例如資源群組或訂用帳戶。

用於列舉無伺服器 SQL 資料庫資源的驗證

有三個地方需要設定驗證,以允許 Microsoft Purview 列舉無伺服器 SQL 資料庫資源。

若要設定 Azure Synapse Analytics 工作區的驗證:

  1. 在 Azure 入口網站 中,移至 Azure Synapse Analytics 工作區資源。
  2. 在左窗格中,選 存取控制 (IAM)
  3. 選取 [新增] 按鈕。
  4. 設定 [讀取者 ] 角色,然後輸入您的 Microsoft 代表其 MSI 的 Purview 帳戶名稱。
  5. 取 [儲存 ] 以完成角色指派。

若要設定記憶體帳戶的驗證:

  1. 在 Azure 入口網站 中,移至包含與 Azure Synapse Analytics 工作區相關聯之記憶體帳戶的資源群組或訂用帳戶。
  2. 在左窗格中,選 存取控制 (IAM)
  3. 選取 [新增] 按鈕。
  4. 設定 記憶體 Blob 資料讀取器 角色,然後在 [ 取] 方塊中輸入Microsoft Purview 帳戶名稱 (代表其 MSI) 。
  5. 取 [儲存 ] 以完成角色指派。

若要設定 Azure Synapse Analytics 無伺服器資料庫的驗證:

  1. 移至您的 Azure Synapse Analytics 工作區並開啟 Synapse Studio。

  2. 在左窗格中,選取 [ 數據]

  3. 選取其中一個資料庫旁的省略號 (...) ,然後啟動新的 SQL 腳本。

  4. 在 SQL 腳本中執行下列命令,以新增 Microsoft Purview 帳戶 MSI (以無伺服器 SQL 資料庫上的帳戶名稱) 表示:

    CREATE LOGIN [PurviewAccountName] FROM EXTERNAL PROVIDER;
    

套用許可權以掃描工作區的內容

您必須在您想要註冊的每個 SQL 資料庫上設定驗證,並從 Azure Synapse 分析工作區進行掃描。 從下列案例中選取套用許可權的步驟。

重要事項

無伺服器資料庫的下列步驟 適用於複寫的資料庫。 在 Azure Synapse Analytics 中,從 Spark 資料庫複寫的無伺服器資料庫目前是唯讀的。 如需詳細資訊,請參閱 復寫資料庫不允許作業

針對專用 SQL 資料庫使用受控識別

重要事項

如果您使用 自我裝載整合運行時間 連線到專用網上的資源,受控識別將無法運作。 您需要使用服務主體驗證或 SQL 驗證。

若要在下列程式中執行命令,您必須是工作區上 Azure Synapse 系統管理員。 如需 Azure Synapse 分析許可權的詳細資訊,請參閱設定 Azure Synapse Analytics 工作區的訪問控制

  1. 移至您的 Azure Synapse Analytics 工作區。

  2. 移至 [ 數據] 區段,然後尋找其中一個專用 SQL 資料庫。

  3. 選取資料庫名稱旁的省略號 (...) ,然後啟動新的 SQL 腳本。

  4. 在您的 SQL 腳本中執行下列命令,以新增 Microsoft Purview 帳戶 MSI (以帳戶名稱表示) 如 db_datareader 專用 SQL 資料庫上所示:

    CREATE USER [PurviewAccountName] FROM EXTERNAL PROVIDER
    GO
    
    EXEC sp_addrolemember 'db_datareader', [PurviewAccountName]
    GO
    
  5. 在 SQL 文稿中執行下列命令,以確認角色的新增:

    SELECT p.name AS UserName, r.name AS RoleName
    FROM sys.database_principals p
    LEFT JOIN sys.database_role_members rm ON p.principal_id = rm.member_principal_id
    LEFT JOIN sys.database_principals r ON rm.role_principal_id = r.principal_id
    WHERE p.authentication_type_desc = 'EXTERNAL'
    ORDER BY p.name;
    

針對您想要掃描的每個資料庫,請遵循相同的步驟。

針對無伺服器 SQL 資料庫使用受控識別

  1. 移至您的 Azure Synapse Analytics 工作區。

  2. 移至 [ 數據] 區段,然後選取其中一個 SQL 資料庫。

  3. 選取資料庫名稱旁的省略號 (...) ,然後啟動新的 SQL 腳本。

  4. 在 SQL 腳本中執行下列命令,以新增以帳戶名稱表示的 Microsoft Purview 帳戶 MSI (,) 在 db_datareader 無伺服器 SQL 資料庫上:

    CREATE USER [PurviewAccountName] FOR LOGIN [PurviewAccountName];
    ALTER ROLE db_datareader ADD MEMBER [PurviewAccountName]; 
    
  5. 在 SQL 文稿中執行下列命令,以確認角色的新增:

    SELECT p.name AS UserName, r.name AS RoleName
    FROM sys.database_principals p
    LEFT JOIN sys.database_role_members rm ON p.principal_id = rm.member_principal_id
    LEFT JOIN sys.database_principals r ON rm.role_principal_id = r.principal_id
    WHERE p.authentication_type_desc = 'EXTERNAL'
    ORDER BY p.name;
    

針對您想要掃描的每個資料庫,請遵循相同的步驟。

授與使用外部數據表認證的許可權

如果 Azure Synapse Analytics 工作區有任何外部數據表,您必須為Microsoft提供外部數據表範圍認證的 Purview 受控識別參考許可權。 使用 [參考] 許可權,Microsoft Purview 可以從外部數據表讀取數據。

  1. 在 SQL 文稿中執行下列命令,以取得資料庫範圍認證的清單:

    Select name, credential_identity
    from sys.database_scoped_credentials;
    
  2. 若要授與資料庫範圍認證的存取權,請執行下列命令。 將取代 scoped_credential 為資料庫範圍認證的名稱。

    GRANT REFERENCES ON DATABASE SCOPED CREDENTIAL::[scoped_credential] TO [PurviewAccountName];
    
  3. 若要確認許可權指派,請在 SQL 文稿中執行下列命令:

    SELECT dp.permission_name, dp.grantee_principal_id, p.name AS grantee_principal_name
    FROM sys.database_permissions AS dp
    JOIN sys.database_principals AS p ON dp.grantee_principal_id = p.principal_id
    JOIN sys.database_scoped_credentials AS c ON dp.major_id = c.credential_id;
    

設定 Azure Synapse Analytics 工作區的防火牆存取

  1. 在 Azure 入口網站 中,移至 Azure Synapse Analytics 工作區。

  2. 在左窗格中,選取 [ 網络]

  3. 針對 [允許 Azure 服務和資源存取此工作區控件 ],選取 [ 開啟]

  4. 選取 [儲存]

如果您想要掃描先前已啟用 Azure Synapse 工作區 (Azure Synapse 功能的專用 SQL 集區 (先前稱為 SQL DW) 的 SQL DW ) ,以下是先前稱為 SQL DW (SQL DW) 的專用 SQL 集區所需的額外設定步驟:

  1. 在 Azure 入口網站 中,移至與專用 SQL 集區相關聯的 SQL Server 資源, (先前稱為 SQL DW) 。

  2. 在左窗格中,選取 [ 網络]

  3. 針對 [允許 Azure 服務和資源存取此伺服器控件 ],選取 [ 開啟]

  4. 選取 [儲存]

重要事項

如果您無法在 Azure Synapse Analytics 工作區上啟用 [允許 Azure 服務和資源存取此工作區],當您在 Microsoft Purview 治理入口網站中設定掃描時,將會發生無伺服器資料庫列舉失敗。 在此情況下,您可以選擇 [ 手動輸入 ] 選項來指定您要掃描的資料庫名稱,然後 使用 API 繼續或設定掃描

建立並執行掃描

  1. Microsoft Purview 治理入口網站的左窗格中,選取 [ 數據對應]

  2. 選取您註冊的數據源。

  3. 取 [檢視詳細數據],然後選取 [ 新增掃描]。 或者,您可以選取來源磚上的 [掃描快速動作 ] 圖示。

  4. 在 [ 掃描 詳細數據] 窗格的 [ 名稱 ] 方塊中,輸入掃描的名稱。

注意事項

針對整合運行時間,如果您使用 受控 VNet 執行時間,請確定您已建立必要的受控私人端點:

  • 若要掃描無伺服器集區,請為您的 Synapse 工作區建立 sqlOnDemand 子資源類型的受控私人端點。
  • 若要掃描專用集區,請為您的 Synapse 工作區建立 sql 子資源類型的受控私人端點。
  • 如果您同時掃描無伺服器和專用集區,則無法同時建立受控私人端點,然後在精靈中選取一個。
  1. 在 [ 認證] 下拉式清單中,選取要連線到數據源內資源的認證。

  2. 針對 [資料庫選取方法],選取 [ 從 Synapse 工作區 ] 或 [手動輸入]。 根據預設,Microsoft Purview 會嘗試列舉工作區下的資料庫,而且您可以選取要掃描的資料庫。

    Azure Synapse 來源掃描詳細數據窗格的螢幕快照。

    如果您收到錯誤,指出 Microsoft Purview 無法載入無伺服器資料庫,您可以 手動選取 Enter 來指定資料庫類型 (專用或無伺服器) 和對應的資料庫名稱。

    設定掃描時手動輸入資料庫名稱之選取項目的螢幕快照。

  3. 取 [測試連線 ] 以驗證設定。 如果您收到任何錯誤,請在報表頁面上,將滑鼠停留在聯機狀態上,以查看詳細數據。

  4. 選取 [繼續]

  5. 選擇 [#D1ACA267F0B024738BBAE4ED81B3B852D SQL 類型的掃描規則集] 。 您也可以建立內嵌掃描規則集。

  6. 選擇掃描觸發程式。 您可以設定排程或執行掃描一次。

  7. 檢閱您的掃描,然後選取 [ 儲存 ] 以完成設定。

檢視掃描和掃描執行

若要檢視現有的掃描:

  1. 移至 Microsoft Purview 入口網站。 在左窗格中,選取 [ 數據對應]
  2. 選取數據源。 您可以在 [最近掃描] 底下檢視該數據源上現有 掃描的清單,也可以在 [掃描] 索引 卷標上 檢視所有掃描。
  3. 選取具有您想要檢視結果的掃描。 此窗格會顯示所有先前的掃描執行,以及每個掃描執行的狀態和計量。
  4. 選取執行標識碼以檢查 掃描執行詳細數據

管理您的掃描

若要編輯、取消或刪除掃描:

  1. 移至 Microsoft Purview 入口網站。 在左窗格中,選取 [ 數據對應]

  2. 選取數據源。 您可以在 [最近掃描] 底下檢視該數據源上現有 掃描的清單,也可以在 [掃描] 索引 卷標上 檢視所有掃描。

  3. 選取您要管理的掃描。 然後您可以:

    • 選取 [編輯掃描 ],以編輯掃描
    • 選取 [ 取消掃描執行],以取消進行中的掃描。
    • 選取 [ 刪除掃描],以刪除掃描

注意事項

  • 刪除掃描並不會刪除從先前掃描建立的類別目錄資產。

使用 API 設定掃描

以下是使用 Microsoft Purview REST API 建立無伺服器資料庫掃描的範例。 以實際設定取代大括弧 ({}) 的佔位符。 深入了解 掃描 - 建立或更新

PUT https://{purview_account_name}.purview.azure.com/scan/datasources/<data_source_name>/scans/{scan_name}?api-version=2022-02-01-preview

在下列程式代碼中, collection_id 不是集合的易記名稱,也就是五個字元的標識碼。 對於根集合, collection_id 是集合的名稱。 針對所有子集合,而是您可以在下列其中一個位置找到的標識碼:

  • Microsoft Purview 治理入口網站中的 URL。 選取集合,然後檢查 URL 以找出其顯示 collection=的位置。 這就是您的標識碼。 在下列範例中, Investment 集合的標識碼為 50h55c

    URL 中集合標識碼的螢幕快照。

  • 您可以 列出根集合的子集合名稱 來列出集合,然後使用名稱,而不是易記名稱。

{
    "properties":{
        "resourceTypes":{
            "AzureSynapseServerlessSql":{
                "scanRulesetName":"AzureSynapseSQL",
                "scanRulesetType":"System",
                "resourceNameFilter":{
                    "resources":[ "{serverless_database_name_1}", "{serverless_database_name_2}", ...]
                }
            }
        },
        "credential":{
            "referenceName":"{credential_name}",
            "credentialType":"SqlAuth | ServicePrincipal | ManagedIdentity (if UAMI authentication)"
        },
        "collection":{
            "referenceName":"{collection_id}",
            "type":"CollectionReference"
        },
        "connectedVia":{
            "referenceName":"{integration_runtime_name}",
            "integrationRuntimeType":"SelfHosted (if self-hosted IR) | Managed (if VNet IR)"
        }
    },
    "kind":"AzureSynapseWorkspaceCredential | AzureSynapseWorkspaceMsi (if system-assigned managed identity authentication)"
}

若要排程掃描,請在掃描建立之後為其建立觸發程式。 如需詳細資訊,請參閱 觸發程式 - 建立觸發程式

疑難排解

如果您有任何掃描問題:

後續步驟

現在您已註冊來源,請使用下列指南來深入瞭解 Microsoft Purview 和您的數據: