安全的資料分享

Snowflake 管理、治理與協作

Emily Melhuish

Technical Curriculum Developer, Snowflake

傳統資料分享的問題

傳統問題

Snowflake 管理、治理與協作

Snowflake 分享如何運作

圖示:兩個組織間以擷取、傳輸、載入步驟進行的傳統資料管線

Snowflake 管理、治理與協作

建立 Share

CREATE SHARE claro_credit_risk_share; -- Step 1

GRANT USAGE ON DATABASE credit_risk_db -- Step 2
  TO SHARE claro_credit_risk_share;
GRANT USAGE ON SCHEMA credit_risk_db.analytics
  TO SHARE claro_credit_risk_share;
GRANT SELECT ON TABLE credit_risk_db.analytics.risk_summary
  TO SHARE claro_credit_risk_share;

ALTER SHARE claro_credit_risk_share -- Step 3
  ADD ACCOUNTS = partner_bank.eu_west;
Snowflake 管理、治理與協作

掛載 Share

-- Consumer creates a database from the share
CREATE DATABASE claro_shared_data
  FROM SHARE claro.eu_west.claro_credit_risk_share;

-- Query it like any other database
SELECT *
FROM claro_shared_data.analytics.risk_summary;
Snowflake 管理、治理與協作

Reader 帳戶

  • 並非每個合作夥伴都有 Snowflake 帳戶
  • Claro 代合作夥伴建立 reader 帳戶
  • 合作夥伴用提供的憑證查詢 share
  • 取捨:Claro 負擔 reader 的運算費用

安全資料分享

資料分享

Snowflake 管理、治理與協作

分享中的安全檢視

  • 預設:SECURE_OBJECTS_ONLY = TRUE 並排比較:標準檢視會曝光其 SQL 定義;安全檢視會對使用者隱藏定義

  • 雖不建議,你仍可將 SECURE_OBJECTS_ONLY 設為 FALSE

1 https://docs.snowflake.com/en/user-guide/data-sharing-secure-views
Snowflake 管理、治理與協作

一起來練習吧!

Snowflake 管理、治理與協作

Preparing Video For Download...