Snowflake

Snowflakeネットワークセキュリティ|Network Policy・Private Link・MFA

2026-03-21
更新: 2026-03-27
NicheeLab編集部

Snowflakeのネットワークセキュリティは、Network Policy(IP制限)・Private Link(プライベート接続)・MFA(多要素認証)・暗号化の4つの柱で構成されます。SnowPro Core試験のAccount Access & Securityドメイン(20%)で頻出するトピックです。

この記事では、Network PolicyのSQL例、Private Linkのクラウド別比較表、MFAの動作と設定、暗号化の仕組みを実務レベルで解説します。

Network Policy(ネットワークポリシー)

Network Policyは、IPアドレスに基づいてSnowflakeアカウントへの接続を制御する仕組みです。ALLOWED_IP_LIST(接続を許可するIPアドレスのリスト)とBLOCKED_IP_LIST(接続をブロックするIPアドレスのリスト)の2つのリストで構成されます。

Network Policyの作成と適用

-- Network Policy の作成
CREATE OR REPLACE NETWORK POLICY corp_network_policy
  ALLOWED_IP_LIST = ('203.0.113.0/24', '198.51.100.10')
  BLOCKED_IP_LIST = ('203.0.113.99')
  COMMENT = '本社ネットワークからの接続のみ許可';

-- アカウントレベルで適用(全ユーザーに影響)
ALTER ACCOUNT SET NETWORK_POLICY = corp_network_policy;

-- 特定ユーザーに適用(アカウントレベルより優先)
ALTER USER analyst_user SET NETWORK_POLICY = analyst_policy;

-- Network Policy の確認
DESCRIBE NETWORK POLICY corp_network_policy;

-- Network Policy の解除
ALTER ACCOUNT UNSET NETWORK_POLICY;

ALLOWED_IP_LIST と BLOCKED_IP_LIST の評価ロジック

設定パターン動作
ALLOWED_IP_LISTのみ指定リスト内のIPのみ接続許可。それ以外は全ブロック
BLOCKED_IP_LISTのみ指定リスト内のIPをブロック。それ以外は全許可
両方指定ALLOWED_IP_LISTに含まれ、かつBLOCKED_IP_LISTに含まれないIPのみ許可

Network Policyはアカウントレベルとユーザーレベルの両方で設定可能で、ユーザーレベルの設定がアカウントレベルより優先されます。SnowPro試験ではこの優先順位が頻出です。

Network Ruleとの違い(2024年〜)

Snowflakeは従来のNetwork Policyに加え、Network Ruleをサポートしています。 Network RuleはIPアドレスだけでなく、VPCエンドポイントID・プライベートリンクID・ホスト名での制御が可能です。 Network PolicyにNetwork Ruleをアタッチして使用します。

-- Network Rule の作成(VPCエンドポイントベース)
CREATE NETWORK RULE vpc_rule
  TYPE = PRIVATE_HOST_PORT
  VALUE_LIST = ('vpce-0123456789abcdef0')
  MODE = INGRESS;

-- Network Policy に Network Rule をアタッチ
CREATE NETWORK POLICY advanced_policy
  ALLOWED_NETWORK_RULE_LIST = ('vpc_rule');

Private Linkは、パブリックインターネットを経由せずにクラウドプロバイダーのプライベートネットワーク経由でSnowflakeに接続する仕組みです。Business Critical Edition以上が必要です。

クラウドサービス名設定手順エンドポイント
AWSAWS PrivateLinkSYSTEM$GET_PRIVATELINK_CONFIG() → VPCエンドポイント作成 → DNS設定VPC Interface Endpoint
AzureAzure Private LinkSYSTEM$GET_PRIVATELINK_CONFIG() → Private Endpoint作成 → Private DNS ZonePrivate Endpoint
GCPPrivate Service ConnectSYSTEM$GET_PRIVATELINK_CONFIG() → PSC Endpoint作成 → DNS設定PSC Endpoint
-- Private Link設定情報の取得(ACCOUNTADMINが実行)
SELECT SYSTEM$GET_PRIVATELINK_CONFIG();

-- 結果例(AWS)
-- {
--   "privatelink-account-name": "abc12345.us-east-1.privatelink",
--   "privatelink-vpce-id": "com.amazonaws.vpce.us-east-1.vpce-svc-...",
--   "privatelink-account-url": "abc12345.us-east-1.privatelink.snowflakecomputing.com"
-- }

MFA(多要素認証)

SnowflakeのMFAはDuo Security(Cisco)ベースのTOTP認証を使用します。ユーザーはSnowsightの設定画面またはALTER USER文でMFAを有効化できます。

-- 特定ユーザーのMFA強制有効化
ALTER USER admin_user SET MINS_TO_BYPASS_MFA = 0;

-- アカウント全体でMFAを必須化
ALTER ACCOUNT SET REQUIRE_MFA = TRUE;

-- MFAの一時バイパス(緊急時)
ALTER USER admin_user SET MINS_TO_BYPASS_MFA = 60;

MFA有効化後はSnowsight・SnowSQL・JDBC/ODBCドライバーすべてで認証コード入力が求められます。 プログラム的な接続(ETLジョブ等)ではキーペア認証の使用が推奨されます。

暗号化

暗号化レイヤー方式エディション
通信の暗号化TLS 1.2以上全エディション
保存データの暗号化AES-256(Snowflake管理キー)全エディション
自動キーローテーション30日ごとにキーを自動更新Enterprise以上
Tri-Secret Secure顧客管理キー + Snowflake管理キーの組み合わせBusiness Critical以上

Tri-Secret Secureでは、Snowflake管理の暗号化キーと顧客がクラウドプロバイダーのKMS(AWS KMS / Azure Key Vault / Google Cloud KMS)で管理するキーを組み合わせます。顧客がキーを無効化すると、Snowflake側のデータアクセスも停止するため、データ主権の要件を満たせます。

問題例

Network Policy

問題 1

SnowflakeのNetwork Policyについて正しい説明はどれですか?

  1. Network Policyはアカウントレベルでのみ適用でき、個別ユーザーには適用できない
  2. ALLOWED_IP_LISTとBLOCKED_IP_LISTの両方を指定した場合、BLOCKED_IP_LISTが先に評価される
  3. Network Policyはアカウントレベルとユーザーレベルの両方で設定でき、ユーザーレベルの設定がアカウントレベルより優先される
  4. Network Policyを設定すると、Private Link経由の接続は自動的にすべて許可される

正解: C

SnowflakeのNetwork Policyはアカウントレベルとユーザーレベルの両方で設定可能で、ユーザーレベルの設定がアカウントレベルより優先されます。例えば、アカウントレベルで社内IPのみを許可し、特定のリモートワーカーにはユーザーレベルで追加IPを許可する運用ができます。ALLOWED_IP_LISTを指定すると、リスト内のIPのみ接続が許可されますが、さらにBLOCKED_IP_LISTで特定IPを除外できます。Network PolicyはSnowsight(WebUI)・SnowSQL・JDBC/ODBCすべての接続に適用されます。

ネットワークセキュリティの問題を解こう

日本語問題集でSnowPro試験の実力チェック

無料で問題を解く

よくある質問(FAQ)

Network Policyを設定する際にロックアウトされるリスクはありますか?

はい。アカウントレベルのNetwork PolicyでALLOWED_IP_LISTを設定する際に、自分のIPアドレスを含め忘れると、Snowsight(WebUI)・SnowSQL・JDBCなどすべての接続がブロックされてロックアウトされます。この場合、Snowflakeサポートに連絡してNetwork Policyの解除を依頼する必要があります。防止策として、設定前に必ず自身のIPをALLOWED_IP_LISTに含め、まずユーザーレベルで小規模にテストしてからアカウントレベルに適用することが推奨されます。BLOCKED_IP_LISTのみの設定であればロックアウトリスクは低減できます。

Private LinkはどのSnowflakeエディションから利用できますか?

Private Link(AWS PrivateLink / Azure Private Link / Google Cloud Private Service Connect)はBusiness Critical Edition以上で利用可能です。Standard EditionやEnterprise Editionでは利用できません。Private Linkの初期セットアップにはACCOUNTADMINロールでのシステム関数実行(SYSTEM$GET_PRIVATELINK_CONFIG())が必要で、Snowflakeアカウント側のPrivate Link設定とクラウドプロバイダー側のVPCエンドポイント設定の両方が必要です。設定完了後もパブリックエンドポイントは自動ブロックされないため、別途Network Policyでの制限が推奨されます。

MFA(多要素認証)はSnowflakeで必須ですか?

2026年現在、SnowflakeはすべてのユーザーにMFAの有効化を強く推奨していますが、デフォルトでは必須ではありません。ただし、ACCOUNTADMINロールのユーザーにはMFAの設定が特に推奨されます。アカウント管理者はALTER ACCOUNT SET REQUIRE_MFA = TRUEを実行してアカウント全体でMFAを必須化できます。SnowflakeのMFAはDuo Security(Cisco)ベースのTOTP認証で、Duo MobileアプリまたはSMSで認証コードを受け取ります。MFAを有効化するとSnowsight・SnowSQL・JDBC/ODBCドライバーすべてで認証が求められます。

ネットワークセキュリティ 関連記事

Snowflake RBAC完全解説

ロールベースアクセス制御の設計と運用

Snowflake認定資格一覧

全Snowflake認定資格の概要・費用・難易度を比較

Data Masking完全解説

動的データマスキングの仕組みと設定方法

この記事で学んだ内容を問題で確認しましょう

16,000問以上の問題で実力チェック

無料で問題を解いてみる
この記事の著者

NicheeLab編集部

データエンジニアリング・クラウド資格の専門家。Databricks・Snowflake等の認定資格を保有し、実務経験に基づいた問題作成・解説を行っています。NicheeLab運営。


関連記事
Snowflake

Snowflake資格一覧|全11試験(SnowPro)の難易度・費用

Snowflake認定資格(SnowPro)全11試験の一覧・難易度・費用・出題範囲を徹底解説。...

Snowflake

Snowflake試験の難易度ランキング|全11資格を徹底比較

Snowflake(SnowPro)認定全11試験の難易度をランキング形式で比較。学習時間・合格に必要なスキルから分析。...

Snowflake

Snowflake資格の勉強方法|効率的な学習ルートと合格のコツ

Snowflake認定資格(SnowPro)に最短で合格するための勉強方法。公式リソース・学習スケジュールを徹底ガイド。...

Snowflake

SnowPro Core試験完全解説|出題範囲・問題例・合格戦略

SnowPro Core Certification(COF-C03)を徹底解説。出題範囲・100問の試験形式・合格ライ...

Snowflake

SnowPro Platform Associate完全解説|入門試験の攻略

SnowPro Associate: Platform Certification(SOL-C01)を徹底解説。最も簡単...

Snowflakeの記事一覧 (103件)
© 2026 NicheeLab All rights reserved.