驗證方法與網路原則

Snowflake 管理、治理與協作

Emily Melhuish

Technical Curriculum Developer, Snowflake

什麼是驗證?

  • 驗證會先確認身分,再檢查角色或權限
  • 使用者名稱與密碼是最常見的形式
  • 不同方法適用不同情境
  • 人工作業分析師與自動化 pipeline 的需求不同

Authentication.png

Snowflake 管理、治理與協作

驗證方法與框架

支援的驗證方法:

  • 使用者名稱與密碼
  • 多重要素驗證(MFA)
  • 聯邦驗證(SSO/SAML 2.0)
    • Okta 或 Microsoft Entra ID
  • OAuth、金鑰配對、Programmatic Access Token(PAT)
    • 最適合第三方工具,如 BI 平台
Snowflake 管理、治理與協作

密碼與 MFA

驗證方法 運作方式 主要優點 管理員可強制?
密碼驗證 以使用者名稱與密碼登入 所有使用者的基礎存取 N/A
多重要素驗證(MFA) 密碼加第二要素:Passkey 或 TOTP(基於時間的一次性密碼) 即使密碼外洩也能保護帳戶 Yes
1 [Snowflake: MFA Methods](https://docs.snowflake.com/en/user-guide/security-mfa#restricting-which-mfa-methods-are-available)
Snowflake 管理、治理與協作

金鑰配對驗證

Flow between private and public key

ALTER USER pipeline_svc SET RSA_PUBLIC_KEY = '<your_public_key_here>';
Snowflake 管理、治理與協作

SSO 與 OAuth

SSO / SAML

  • Claro 員工使用既有公司憑證登入 Snowflake
  • 身分提供者負責驗證
  • Snowflake 信任其結果
    • Okta、Microsoft Entra ID
    • 任一符合 SAML 的 IDP

OAuth

  • 為第三方工具(BI 平台、整合)設計
  • 進行授權而不將使用者憑證暴露給工具
Snowflake 管理、治理與協作

什麼是網路原則?

Website with network policy in place

1 [Snowflake: Network Policies](https://docs.snowflake.com/en/user-guide/network-policies)
Snowflake 管理、治理與協作

建立網路原則

先建立網路規則,再在原則中引用

CREATE NETWORK RULE claro_allowed_ips
  TYPE = IPV4
  VALUE_LIST = ('10.0.0.0/8', '203.0.113.5');

CREATE NETWORK RULE claro_blocked_ips
  TYPE = IPV4
  VALUE_LIST = ('198.51.100.0');

CREATE NETWORK POLICY claro_network_policy
  ALLOWED_NETWORK_RULE_LIST = ('claro_allowed_ips')
  BLOCKED_NETWORK_RULE_LIST = ('claro_blocked_ips');
Snowflake 管理、治理與協作

套用網路原則

可套用於帳戶或使用者層級

ALTER ACCOUNT SET NETWORK_POLICY = claro_network_policy;
ALTER USER pipeline_svc SET NETWORK_POLICY = claro_network_policy;

Network policy representation.png

Snowflake 管理、治理與協作

私有連線

  • 網路原則會限制經由公用網際網路的 IP
  • 私有連線將流量導向私有網路端點
  • 流量不會經過公用網際網路
  • 支援 AWS PrivateLink、Azure Private Link、Google Cloud Private Service Connect
  • 適用於對資料駐留或法規遵循要求嚴格的組織
Snowflake 管理、治理與協作

一起來練習吧!

Snowflake 管理、治理與協作

Preparing Video For Download...