共用方式為


在 Microsoft Purview 中連接並管理 Snowflake

本文說明如何註冊 Snowflake,以及如何在 Microsoft Purview 中驗證與互動 Snowflake。 欲了解更多關於 Microsoft Purview 的資訊, 請閱讀導言文章

重要事項

Snowflake 宣布 他們將在 2026 年 5 月關閉基本認證功能。 為配合變更並避免服務中斷,Microsoft Purview 客戶使用 Snowflake Data Map 連接器時,應轉換為 OAuth 2.0 (Azure IR) 或 SHIR) 驗證 (金鑰對。

建議行動 (於2026年4月完成) :為給客戶更多時間,Snowflake允許LEGACY_SERVICE型服務使用者持續使用基本認證至2026年4月。 此政策有助於確保您在轉換到新身份驗證方式期間,服務不會受到干擾。 你可以在有限時間內繼續使用基本認證,同時設定並驗證新的認證機制,無論是 OAuth 還是金鑰對。

我們建議Microsoft Purview 客戶將使用者更新為 LEGACY_SERVICE 類型。 此變更確保持續通行,並提供更多時間完成交接。 此更新必須在 2026 年 4 月底前完成,方法是在 Snowflake 中執行以下指令

*ALTER USER <purview_user_name> SET TYPE = LEGACY_SERVICE;

自 2026 年 5 月起,禁止以 LEGACY_SERVICE 類型創建新用戶。

接下來的步驟: OAuth 2.0 與金鑰對認證的私人預覽正在進行中。 我們將在 2026 年 1 月擴大更多客戶的存取權。 如有疑問或了解預覽機會,請使用此 表單

支援功能

掃描能力

元資料擷取 全掃描 增量掃描 瞄準鏡掃描

掃描 Snowflake 來源時,Microsoft Purview 支援:

  • 擷取技術元資料,包括:

    • 伺服器
    • 資料庫
    • Schemas
    • 包含欄位、外鍵與唯一限制的表格
    • 包含柱子的景觀
    • 儲存程序,包括參數資料集與結果集
    • 函數,包括參數資料集
    • 管線
    • 階段
    • 包括柱子在內的溪流
    • 工作
    • Sequences
  • 擷取資料表、檢視、串流與儲存程序間資產關係的靜態血統。

對於儲存程序,你可以選擇掃描 要提取的細節層級。 儲存程序沿承支援 Snowflake 腳本 (SQL) 與 JavaScript 語言,並根據程序定義產生。

在設定掃描時,你可以選擇完全根據名字或名稱模式掃描一個或多個 Snowflake 資料庫,或進一步將掃描範圍擴大到與名字或名稱模式相符的子集結構。

其他功能

關於 分類敏感性標籤政策資料血統即時檢視,請參閱 支援功能清單

已知限制

  • 當你從資料來源刪除物件時,後續掃描不會自動移除 Microsoft Purview 中對應的資產。
  • 以下模式不支援儲存程序沿革:
    • 以 Java、Python 和 Scala 語言定義的儲存程序。
    • 使用 SQL 執行 即時執行的儲存程序,並以靜態 SQL 查詢作為變數。

必要條件

掃描所需的權限

Microsoft Purview 支援基本的驗證, (使用者名稱和密碼) 來掃描 Snowflake。 執行掃描時會使用指定的使用者預設角色。 Snowflake 使用者必須擁有倉庫及待掃描資料庫的使用權限,並能讀取系統資料表,才能存取進階元資料。

這裡有一個範例攻略,教你建立專門用於 Microsoft Purview 的使用者掃描並設定權限。 如果你選擇使用現有使用者,請確保它對倉庫和資料庫物件擁有足夠的權限。

  1. 建立一個 purview_reader 角色。 你需要 ACCOUNTADMIN 權限才能做到這點。

    USE ROLE ACCOUNTADMIN;
    
    --create role to allow read only access - this will later be assigned to the Microsoft Purview user
    CREATE OR REPLACE ROLE purview_reader;
    
    --make sysadmin the parent role
    GRANT ROLE purview_reader TO ROLE sysadmin;
    
  2. 建立一個倉庫供 Microsoft Purview 使用並授予權限。

    --create warehouse - account admin required
    CREATE OR REPLACE WAREHOUSE purview_wh WITH 
        WAREHOUSE_SIZE = 'XSMALL' 
        WAREHOUSE_TYPE = 'STANDARD' 
        AUTO_SUSPEND = 300 
        AUTO_RESUME = TRUE 
        MIN_CLUSTER_COUNT = 1 
        MAX_CLUSTER_COUNT = 2 
        SCALING_POLICY = 'STANDARD';
    
    --grant rights to the warehouse
    GRANT USAGE ON WAREHOUSE purview_wh TO ROLE purview_reader;
    
  3. 建立一個 Microsoft Purview 掃描的使用者 purview

    CREATE OR REPLACE USER purview 
        PASSWORD = '<password>'; 
    
    --note the default role will be used during scan
    ALTER USER purview SET DEFAULT_ROLE = purview_reader;
    
    --add user to purview_reader role
    GRANT ROLE purview_reader TO USER purview;
    
  4. 授予讀者資料庫物件的權利。

    GRANT DATABASE ROLE SNOWFLAKE.OBJECT_VIEWER TO USER purview_reader;
    GRANT USAGE ON DATABASE <your_database_name> TO purview_reader;
    
    --grant reader access to all the database structures that purview can currently scan
    GRANT USAGE ON ALL SCHEMAS IN DATABASE <your_database_name> TO role purview_reader;
    GRANT USAGE ON ALL FUNCTIONS IN DATABASE <your_database_name> TO role purview_reader;
    GRANT USAGE ON ALL PROCEDURES IN DATABASE <your_database_name> TO role purview_reader;
    GRANT SELECT ON ALL TABLES IN DATABASE <your_database_name> TO role purview_reader;
    GRANT SELECT ON ALL VIEWS IN DATABASE <your_database_name> TO role purview_reader;
    GRANT USAGE, READ on ALL STAGES IN DATABASE <your_database_name> TO role purview_reader;
    
    --grant reader access to any future objects that could be created
    GRANT USAGE ON FUTURE SCHEMAS IN DATABASE <your_database_name> TO role purview_reader;
    GRANT USAGE ON FUTURE FUNCTIONS IN DATABASE <your_database_name> TO role purview_reader;
    GRANT USAGE ON FUTURE PROCEDURES IN DATABASE <your_database_name> TO role purview_reader;
    GRANT SELECT ON FUTURE TABLES IN DATABASE <your_database_name> TO role purview_reader;
    GRANT SELECT ON FUTURE VIEWS IN DATABASE <your_database_name> TO role purview_reader;
    GRANT USAGE, READ ON FUTURE STAGES IN DATABASE <your_database_name> TO role purview_reader;
    

登錄

本節說明如何使用 Microsoft Purview 治理入口網站在 Microsoft Purview 註冊 Snowflake。

註冊步驟

要在 Microsoft Purview 整合式目錄中註冊新的 Snowflake 來源,請遵循以下步驟:

  1. 請在 Microsoft Purview 治理入口網站中,前往您的 Microsoft Purview 帳號。
  2. 在左側導覽中選擇 「資料地圖 」。
  3. 選擇 登記冊
  4. 在「註冊來源」中,選擇 Snowflake。 選取 [繼續]

Snowflake) (Register 來源 畫面中,請依照以下步驟操作:

  1. 輸入一個 名稱,該 資料來源會在目錄中列出。

  2. 輸入伺服器網址<account_identifier>.snowflakecomputing.comorgname-accountname.snowflakecomputing.com,例如 。 了解更多關於 Snowflake 帳號識別碼的資訊。 請注意,此 URL 是 Snowflake 資產完全限定名稱的一部分,並且是 Microsoft Purview 在掃描時連接 Snowflake 的預設端點。

  3. 如果適用,請增加 額外的宿主 。 當你想讓掃描操作連接到 Snowflake 端點(除了伺服器 URL)時,再指定它。 你可以在掃描設定時選擇連線主機。

    提示

    如果你已經掃描過 Snowflake,但想切換到其他端點,例如從公用端點切換到私有端點,你可以在資料來源中新增另一台主機,並在掃描中選擇該主機作為連線對象,以確保 Microsoft Purview 產生的資產名稱與之前相同。

    註冊資料來源時,Microsoft Purview 會進行唯一性檢查,確保伺服器網址及其他主機與現有來源不重疊。

  4. 從列表中選擇一個收藏。

  5. 完成註冊資料來源。

    註冊來源選項

掃描

請依照以下步驟掃描 Snowflake,自動識別資產。 關於掃描的更多資訊,請參閱我們 對掃描與攝取的介紹

掃描驗證

Snowflake 來源所支援的認證類型是 基本認證

建立並執行掃描

要建立並執行新的掃描,請依照以下步驟操作:

  1. Microsoft Purview 治理入口網站中,請前往來源。

  2. 選擇註冊的 Snowflake 來源。

  3. 選擇 + 新掃描

  4. 請提供以下細節:

    1. 名稱:掃描的名稱

    2. 透過整合執行時連接:根據你的情境選擇 Azure 自動解析整合執行時、管理型虛擬網路 IR 或 SHIR。 了解更多請參閱「 選擇適合您情境的整合執行時配置」。 若要使用 Managed 虛擬網路 IR 透過私有連結連接 Snowflake,請先依照「透過受管理私有端點連接 Snowflake」中的步驟設定私有端點。

    3. 連線主機:選擇掃描時用來建立 Snowflake 連線的端點。 你可以選擇伺服器 URL 或你在 資料來源中設定的其他主機。

    4. 憑證:選擇要連接到資料來源的憑證。 務必:

      • 建立憑證時選擇 基本認證
      • 請在使用者名稱輸入欄位提供連接 Snowflake 的使用者名稱。
      • 將用來連接 Snowflake 的使用者密碼存入秘密金鑰中。
    5. 倉庫:指定用於大寫掃描的倉庫實例名稱。 憑證中指定的使用者預設角色必須在此倉庫擁有使用權限。

    6. 資料庫:指定一個或多個資料庫實例名稱,以大寫匯入。 請用分號分 (;) 分隔列表中的姓名。 例如,DB1;DB2。 憑證中指定的使用者預設角色必須對資料庫物件擁有足夠的權限。

      注意事項

      當指定多個資料庫實例名稱時,不會對資料表進行分類。

      可接受的資料庫名稱模式可以是靜態名稱,也可以包含萬用字元百分比。 例如: A%;%B;%C%;D

      • 以 A 或
      • 以 B 或 結尾
      • 包含 C 或
      • 等於D
    7. Schema:以分號分隔列表的方式匯入結構子集。 例如,schema1;schema2。 如果該清單是空的,所有使用者結構都會被匯入。 所有系統架構與物件預設都會被忽略。

      可接受的結構名稱模式可以是靜態名稱或包含百用字百分比。 例如: A%;%B;%C%;D

      • 以 A 或
      • 以 B 或 結尾
      • 包含 C 或
      • 等於D

      使用NOT和特殊字元是不可接受的。

    8. 儲存程序細節:控制從儲存程序匯入的細節數量:

      • 簽章 (預設) :儲存程序的名稱與參數。
      • 程式碼、簽名:儲存程序的名稱、參數與程式碼。
      • 脈絡、程式碼、簽名:儲存程序的名稱、參數與程式碼,以及從程式碼衍生出的資料沿革。
      • 無:儲存程序細節未包含。

      注意事項

      如果你使用 Self-hosted Integration Runtime 來掃描,自版本 5.30.8541.1 起,支援除預設簽章外的自訂設定。 早期版本總是擷取儲存程序的名稱與參數。

    9. 使用自架整合執行時 (適用最大記憶體) :最大記憶體 (GB,) 客戶虛擬機上可供掃描程序使用。 這取決於要掃描的 Snowflake 來源的大小。

      注意事項

      經驗法則是,請每 1000 個資料表提供 1GB 記憶體。

      掃描雪花

  5. 選擇測試連線以驗證使用Azure Integration Runtime) 時 (可用的設定。

  6. 選取 [繼續]

  7. 選擇掃描 規則集 進行分類。 你可以選擇系統預設、現有自訂規則集,或是內嵌 建立新的規則集 。 請參考 分類相關文章 以了解更多資訊。

    注意事項

    當資料表名稱、檢視名稱、結構名稱或資料庫名稱包含特殊字元時,分類不會套用到資料表或檢視表。

    注意事項

    如果你使用自架運行時,需要升級到 5.26.404.1 版本或更高版本才能使用 Snowflake 分類。 你可以在這裡找到最新版本的 Microsoft Integration 執行環境。

  8. 選擇你的 掃描觸發器。 你可以設定排程或只跑一次掃描。

  9. 檢視你的掃描結果,選擇 儲存並執行

查看您的掃描與掃描跑數

查看現有掃描檔:

  1. 前往 Microsoft Purview 入口網站。 在左側窗格選擇 「資料地圖」。
  2. 選擇資料來源。 你可以在 「最近掃描」頁面查看該資料來源上現有的掃描清單,或在 「掃描」 標籤中查看所有掃描。
  3. 選擇你想查看的掃描結果。 面板會顯示所有之前的掃描紀錄,以及每次掃描的狀態和指標。
  4. 選擇跑道 ID 來檢查 掃描跑的細節

管理你的掃描

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

  1. 前往 Microsoft Purview 入口網站。 在左側窗格,選擇 資料映射

  2. 選擇資料來源。 你可以在 「最近掃描」頁面查看該資料來源上現有的掃描清單,或在 「掃描」 標籤中查看所有掃描。

  3. 選擇你想管理的掃描。 然後您可以:

    • 請選擇 「編輯掃描」來編輯掃描。
    • 選擇 取消掃描執行,請取消進行中的掃描。
    • 選擇 刪除掃描後刪除掃描。

注意事項

  • 刪除掃描檔不會刪除之前掃描產生的目錄資產。

譜系

掃描完您的 Snowflake 來源後,您可以瀏覽整合式目錄搜尋整合式目錄以查看資產詳情。

到資產-> 血統分頁,你可以在適用時看到資產關係。 請參閱 支援能力 部分,了解支援的 Snowflake 血統情境。 欲了解更多關於血統的一般資訊,請參閱 資料血統血統使用者指南

雪花血統視角

注意事項

如果一個視圖是由不同資料庫或不同結構的資料表建立,請同時使用分號 (;) 清單中的名稱掃描所有資料庫與結構。

透過管理私人端點連接 Snowflake

本節說明從 Purview Microsoft 到 Snowflake on Azure 建立受管理私有端點 (PE) 的必要步驟。 了解更多關於 Azure Private Link 和 Snowflake 的資訊。

  1. 在你的 Snowflake 帳號中,取得目標端點和資源 ID。 執行系統函式 SYSTEM$GET_PRIVATELINK_CONFIG () ,並管理員 角色,並記錄以下屬性的值:

    • 私人連結-PLS-ID
    • 私人連結帳戶網址
    • Regionless-PrivateLink-Account-URL
    • privatelink_ocsp網址
    use role accountadmin; 
    select key, value::varchar from table(flatten(input=>parse_json(SYSTEM$GET_PRIVATELINK_CONFIG())));
    
  2. 在 Microsoft Purview 中,建立一個管理型私有端點到 Snowflake。

    1. 請依照步驟建立管理虛擬網路 Integration Runtime。 如果你已經有 Snowflake PE,請確定它是在支援 Snowflake PE 的版本 2。
    2. 為 Snowflake 建立一個受管理的私人端點。 請導航到 受管理的私有端點 ->+ 新 ->Snowflake,並填寫以下資訊。
      • 資源 ID 或別名:填寫你取得的 privatelink-pls-id 值。
      • 完全合格的網域名稱:新增 privatelink_ocsp-URLregionless-privatelink-account-urlprivatelink-account-url

    為 Snowflake 設置受管理的私有端點

  3. 建立 PE 後,你可以看到它的配置狀態為 「成功」 ,批准狀態為 「待處理」。 打開 PE,並在詳細頁面找到 受管理私有端點資源 ID

  4. 請聯絡 Snowflake 技術支援 並提供資源 ID,讓 Snowflake 核准此 PE。

  5. 一旦 Snowflake 支援確認 PE 已核准,你應該會在 Microsoft Purview 中看到你的託管私有端點核准狀態為 核准

  6. 註冊資料來源設定掃描。 設定掃描時,選擇與 Snowflake PE 相關的管理型虛擬網路 IR。

疑難排解提示

  • 請在來源註冊步驟檢查你的帳號識別碼。 前面不要寫 https:// 零件。
  • 確保掃描設定頁面上的倉庫名稱和資料庫名稱都用大寫字母。
  • 檢查你的鑰匙庫。 請確保密碼中沒有錯字。
  • 檢查你在 Microsoft Purview 設定的憑證。 你指定的使用者必須有預設角色,並且擁有對倉庫和你想掃描的資料庫所需的存取權限。 請參閱 掃描所需權限。 用 USE DESCRIBE USER; 來驗證你為 Microsoft Purview 指定的使用者預設角色。
  • 使用 Snowflake 的查詢歷史,看看是否有任何活動出現。
    • 如果帳號識別碼或密碼有問題,你不會看到任何活動。
    • 如果預設角色有問題,至少應該看到一個 USE WAREHOUSE . . . 聲明。
    • 你可以用 QUERY_HISTORY_BY_USER表函式 來辨識連線正在使用的角色。 建立專屬的 Microsoft Purview 使用者會讓故障排除更容易。

後續步驟

現在你已經註冊了來源,請依照以下指南了解更多關於 Microsoft Purview 及你的資料。