Share via


在 Microsoft Purview 中連線和管理 Azure Synapse Analytics 工作區

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

支援的功能

中繼資料擷取 完整掃描 增量掃描 限域掃描 分類 加標籤 存取原則 血統 資料共用 即時檢視
是 - 管線

目前不支援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分析 (多個)

  5. 選取 [繼續]

    Microsoft Purview 中選取來源的螢幕擷取畫面,包括 Azure Synapse Analytics。

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

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

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

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

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

    4. 針對 [選取集合],選擇您正在使用的集合,或建立新的集合。

    5. 取 [註冊 ] 以完成註冊資料來源。

    輸入有關Azure Synapse來源詳細資料的頁面螢幕擷取畫面。

掃描

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

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

列舉驗證

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

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

  1. 在Azure 入口網站中,移至 Azure Synapse Analytics 工作區資源。
  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. 設定 讀者 角色,然後輸入代表其 MSI 的 Microsoft 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 資料庫使用受控識別

若要在下列程式中執行命令,您必須是工作區上Azure Synapse系統管理員。 如需Azure Synapse Analytics 許可權的詳細資訊,請參閱設定 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分析] 工作區。

  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. 選取 [AZURE SYNAPSE SQL類型的掃描規則集]。 您也可以建立內嵌掃描規則集。

  6. 選擇掃描觸發程式。 您可以將它排程為 每週/每月執行一次

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

檢視掃描和掃描執行

若要檢視現有的掃描:

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

管理您的掃描

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

  1. 移至 Microsoft Purview 治理入口網站。 在左窗格中,選取 [ 資料對應]

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

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

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

注意事項

  • 刪除掃描並不會刪除從先前掃描建立的類別目錄資產。
  • 如果您的來源資料表已變更,且您在 Microsoft Purview 的 [架構] 索引標籤上編輯描述之後重新掃描來源資料表,則資產將不再更新架 變更。

使用 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 和您的資料: