Snowflake

Snowflakeのプライベート接続設計: PrivateLink/PSCの3クラウド比較

2026-03-26
更新: 2026-03-27
NicheeLab編集部
目次
  1. 3クラウド比較表
  2. AWS PrivateLinkの設定手順
  3. Azure Private Linkの設定手順
  4. GCP Private Service Connectの設定手順
  5. DNS設計の重要ポイント
  6. OCSP証明書失効チェックの要件
  7. Internal Stageへのプライベート接続
  8. Network Policyとの併用
  9. 問題で確認
  10. よくある質問

Snowflakeはデフォルトでパブリックインターネット経由のTLS接続をサポートしますが、 金融・医療などのコンプライアンス要件が厳しい環境では、クラウドプロバイダのプライベートバックボーンを経由した接続が求められます。 AWSではAWS PrivateLink、AzureではAzure Private Link、GCPではPrivate Service Connect(PSC)を使って、 Snowflakeへの通信をインターネットに出さずにクラウド内部ネットワークで完結させます。Business Critical Edition以上が必要です。

3クラウド比較表

比較項目AWS PrivateLinkAzure Private LinkGCP Private Service Connect
必要EditionBusiness Critical以上Business Critical以上Business Critical以上
Snowflake側の有効化SYSTEM$AUTHORIZE_PRIVATELINK()SYSTEM$AUTHORIZE_PRIVATELINK()SYSTEM$AUTHORIZE_PRIVATELINK()
顧客側の作成対象VPC Endpoint(Interface型)Private EndpointPSC Endpoint + Forwarding Rule
DNS設定Route 53 Private Hosted ZonePrivate DNS ZoneCloud DNS Private Zone
DNS CNAME先<account>.privatelink.snowflakecomputing.com<account>.privatelink.snowflakecomputing.com<account>.privatelink.snowflakecomputing.com
ステージへのPrivate接続別途S3 VPC Endpoint(Gateway型)別途Storage Private Endpoint別途GCS Private Service Connect
Snowpipeとの互換性サポートありサポートありサポートあり
リージョン制約同一リージョン内のみ同一リージョン内のみ同一リージョン内のみ

AWS PrivateLinkの設定手順

-- Step 1: Snowflakeアカウントに対してPrivateLinkを認可
-- ACCOUNTADMINで実行
SELECT SYSTEM$AUTHORIZE_PRIVATELINK(
  '<aws_account_id>',
  '<vpc_endpoint_id>'
);

-- Step 2: PrivateLinkの設定情報を取得
SELECT SYSTEM$GET_PRIVATELINK_CONFIG();
-- 戻り値にVPC Service Name、OCSP URL等が含まれる

-- Step 3(AWS Console / CLI):
-- VPC Endpoint(Interface型)を作成
-- Service Name: com.amazonaws.vpce.<region>.vpce-svc-xxxxxxxxx
-- VPCとサブネットを指定

-- Step 4: Route 53 Private Hosted Zoneを作成
-- ゾーン名: privatelink.snowflakecomputing.com
-- CNAMEレコード:
--   <account_locator> → VPC Endpoint DNS名
--   <orgname>-<account_name> → VPC Endpoint DNS名

Azure Private Linkの設定手順

-- Step 1: SnowflakeでPrivateLinkを認可
SELECT SYSTEM$AUTHORIZE_PRIVATELINK(
  '<azure_subscription_id>',
  '<private_endpoint_resource_id>'
);

-- Step 2: 設定情報を取得
SELECT SYSTEM$GET_PRIVATELINK_CONFIG();

-- Step 3(Azure Portal / CLI):
-- Private Endpointを作成
-- Resource Type: Microsoft.Snowflake/accounts
-- Target Sub-resource: snowflake

-- Step 4: Private DNS Zone設定
-- ゾーン名: privatelink.snowflakecomputing.com
-- Aレコード: <account_locator> → Private Endpoint IP

GCP Private Service Connectの設定手順

-- Step 1: SnowflakeでPSCを認可
SELECT SYSTEM$AUTHORIZE_PRIVATELINK(
  '<gcp_project_id>'
);

-- Step 2: 設定情報を取得(Service Attachment URI等)
SELECT SYSTEM$GET_PRIVATELINK_CONFIG();

-- Step 3(GCP Console / gcloud):
-- PSC Endpointの作成
-- gcloud compute forwarding-rules create snowflake-psc \
--   --region=<region> \
--   --network=<vpc-name> \
--   --address=<reserved-internal-ip> \
--   --target-service-attachment=<service-attachment-uri>

-- Step 4: Cloud DNS Private Zoneの設定
-- ゾーン名: privatelink.snowflakecomputing.com
-- Aレコード: <account_locator> → 予約した内部IPアドレス

DNS設計の重要ポイント

  • Private Hosted Zone / DNS Zoneの必須性:PrivateLink/PSCを設定しても、DNSが正しく構成されていないとクライアントはパブリックエンドポイントに接続してしまう。DNS解決がPrivate Endpoint IPを返すことを必ず確認する
  • ワイルドカードCNAMEの活用:*.privatelink.snowflakecomputing.com のワイルドカードレコードを設定すると、Internal Stageやクライアントリダイレクトの接続もカバーできる
  • OCSP用のDNS:ocsp.privatelink.snowflakecomputing.com への名前解決もPrivate Endpointを経由するように構成するか、OCSP Fail-Openモードを使用する

OCSP証明書失効チェックの要件

Snowflakeクライアントドライバは、TLS接続時にOCSP(Online Certificate Status Protocol)で証明書の失効状態をチェックします。PrivateLink環境では以下の対応が必要です。

モード動作対策
Fail-Open(デフォルト)OCSPレスポンダに到達できない場合、接続を許可追加対策不要だがセキュリティリスクあり
Fail-CloseOCSPレスポンダに到達できない場合、接続を拒否OCSPレスポンダへのアウトバウンド接続を許可するか、OCSPキャッシュサーバーを配置

Internal Stageへのプライベート接続

-- Internal StageへのPrivateLink接続を有効化
SELECT SYSTEM$AUTHORIZE_STAGE_PRIVATELINK_ACCESS(
  '<account_locator>',
  '<aws_account_id>'
);

-- AWS: S3 VPC Endpoint(Gateway型)が別途必要
-- Azure: Blob Storage Private Endpointが別途必要
-- GCP: GCS PSC Endpointが別途必要

-- PrivateLink経由でのステージ操作確認
PUT file:///tmp/data.csv @~;
GET @~/data.csv file:///tmp/;

Network Policyとの併用

-- PrivateLink経由のみ許可するNetwork Policy
CREATE NETWORK POLICY private_only_policy
  ALLOWED_IP_LIST = ('<private_endpoint_ip_range>')
  BLOCKED_IP_LIST = ('0.0.0.0/0');

-- アカウントレベルに適用
ALTER ACCOUNT SET NETWORK_POLICY = private_only_policy;

-- この設定により、パブリックエンドポイント経由の
-- アクセスが完全にブロックされる

問題で確認

Architecture & Design

問題 1

AWS上のBusiness Critical EditionのSnowflakeアカウントにAWS PrivateLinkを設定した。VPC EndpointとRoute 53 Private Hosted Zoneを正しく構成したが、SnowSQLクライアントからの接続がまだパブリックエンドポイント経由になっている。最も可能性の高い原因はどれか。

  1. SnowflakeアカウントでSYSTEM$AUTHORIZE_PRIVATELINK()を実行していない
  2. Route 53のPrivate Hosted ZoneがVPCに関連付けられていない
  3. VPC EndpointのSecurity GroupでHTTPSインバウンドがブロックされている
  4. Network PolicyでパブリックIPをブロックしていないため、DNS解決がパブリックIPを返している

正解: B

VPC EndpointとPrivate Hosted Zoneを作成しても、Private Hosted ZoneがSnowSQLクライアントが存在するVPCに関連付けられていないと、DNS解決がPublic DNS(パブリックIP)を返します。Route 53のPrivate Hosted ZoneはVPCとの明示的な関連付けが必要で、これが欠けているとPrivateLinkのDNS名前解決が機能しません。

よくある質問

PrivateLinkを有効にした後もパブリックエンドポイント経由でアクセスできますか?

PrivateLinkを有効にしただけでは、パブリックエンドポイント経由のアクセスは引き続き可能です。パブリックアクセスを完全にブロックするには、Network Policyを設定してPrivateLink経由のIPアドレスのみを許可する必要があります。SYSTEM$GET_PRIVATELINK_AUTHORIZED_ENDPOINTS()で取得したエンドポイント情報と、Network Policyの併用が推奨されるセキュリティ設計です。

PrivateLink接続時にOCSP証明書失効チェックはどう処理されますか?

PrivateLink接続でもTLS証明書の検証にOCSPチェックが必要です。OCSPレスポンダへのアクセスはインターネット経由になるため、プライベート接続環境でもOCSPレスポンダ(ocsp.snowflakecomputing.com)への外向きHTTPSアクセスを許可する必要があります。完全なインターネット遮断環境では、OCSP Fail-Openモード(デフォルト)を利用するか、OCSPレスポンスキャッシュサーバーを社内に配置する対策を検討します。

3クラウド(AWS/Azure/GCP)のうちどのPrivate接続方式が最もセットアップが簡単ですか?

AWSのPrivateLinkはVPC Endpoint作成とDNSの2ステップで完結するため比較的シンプルです。Azure Private Linkも同様にPrivate Endpoint作成とDNS設定で構成できます。GCPのPrivate Service Connectは、Forwarding Ruleの作成とCloud DNSの設定が必要で、GCP固有の概念(Service Attachment等)の理解が求められるため、若干複雑です。ただし3クラウドともSnowflakeアカウント側でSYSTEM$AUTHORIZE_PRIVATELINK()やSYSTEM$AUTHORIZE_STAGE_PRIVATELINK_ACCESS()の実行が必要な点は共通です。

クラウドの基礎から読む

資格の話をしない、クラウドそのものの入門 8 章があります。登録なしで全部読めます。

第 0 部・無料

クラウド自体がはじめての方へ

サーバー・ネットワーク・データベースの前提知識なしで読める 8 章。登録不要・無料。

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

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

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

NicheeLab編集部

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


関連記事
Snowflake

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

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

Snowflake

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

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

Snowflake

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

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

Snowflake

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

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

Snowflake

SnowPro Platform Associate(SOL-C01)完全解説|現在は予約不可・試験内容と次の受験先

SnowPro Associate: Platform(SOL-C01)は2026年10月時点でSnowflakeの公式...

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