注:本記事は(2021年10月27日)に公開された(Snowflake Announces Support for Google Cloud Private Service Connect)を翻訳して公開したものです。

Snowflakeは、そのコアにクロスクラウドセキュリティを組み込んで構築されており、ネットワークアクセスから、認証、アクセス制御、暗号化を使用したデータ保護まで、複数層にわたる堅牢な保護を提供します(Snowflakeのセキュリティに関する詳細については、Snowflake Summitのオンデマンドセッションをご覧ください)。厳しい規制に対処する世界中のカスタマーにとって、プライベート接続を可能にすることが、重要な第一の防御線となります。AWS PrivateLinkとAzure Private Linkとのネイティブ統合を通じて、Snowflakeはクラウドやリージョンを問わず、プライベート接続を簡単に設定できます。このたび、Google CloudがPrivate Service Connectの一般提供の開始について発表したことに引き続き、Snowflakeは、Google Cloudをご利用のSnowflakeカスタマーに向け、Private Service Connect統合機能の一般提供を開始することをお知らせします。

この統合により、カスタマーのネットワーク上で実行されている他のアプリケーションと同様に、Google Cloudのセキュアなネットワーク上でデータフローのプライベートを保護しながら、カスタマーのネットワークからプライベートIPアドレス経由でSnowflakeアカウントにアクセスできます。Private Service Connectは、カスタマーの仮想プライベートクラウド(VPC)からSnowflakeへ一方通行の接続を確保し、データがパブリックインターネットを通過することがないため(図1参照)、一般的なセキュリティ脅威への暴露を大幅に低減します。Private Service Connectの統合は、セキュリティの強化に加え、ネットワークトポロジーをシンプル化します。

「セキュリティとパフォーマンスに厳しい要件を掲げるSnowflakeのような企業が、Google Cloud上でサービスをネイティブにデリバリするためにPrivate Service Connectを選んでくださったことを嬉しく思います。SnowflakeとPrivate Service Connectがあれば、カスタマーはシームレスに、安全に、かつすばやくデータにアクセスできます。」
—Pierre Ettori氏、クラウドネットワーキングプロダクト管理部門、Google Cloud

仕組み

Google Cloud上のSnowflakeは、Private Service Connectのサービスアタッチメントを公開します。カスタマーは、VPC内でこのサービスアタッチメントに対する転送ルールを作成します。すると、SnowflakeはプライベートIPアドレスを持つリソースとしてカスタマーのVPCに表示されます。

図1:Private Service Connectにより、カスタマーのVPCからSnowflakeへの一方通行の接続が確保されるため、データがパブリックインターネットを通過することはありません

ベストプラクティス

この機能を使用する上でのベストプラクティスをいくつかご紹介します。

その1:オンプレミスのシステムや他のGoogle CloudリージョンからSnowflakeにアクセスする

Private Service Connectは現在、同じGoogle Cloudリージョンのみでの接続に使用できます(つまり、カスタマーとSnowflakeのVPCは、us-central-1など、同じリージョン内にある必要があります)。プロキシベースのワークアラウンドを使用すれば、オンプレミスシステムや別のGoogleクラウドリージョンからSnowflakeにアクセスできます。そのようなプロキシオプションの場合、図2に示すとおり、グローバルアクセスを有効化したレイヤー4(L4)内部ロードバランサの背後にある仮想マシンベースのNATゲートウェイによって、ソースと宛先にネットワークアドレス変換(NAT)が適用されます。利用可能なワークアラウンドの全リストと各環境固有の要件については、Google Cloudの担当者にお問い合わせください。

図2:プロキシオプション

その2:DNSの設定

Snowflake URLの解決には任意のカスタムドメインネームサービス(DNS)を使用できますが、セットアップを容易にするためには、可能な限りGoogle CloudのCloud DNSサービスを使用してください。オンプレミスネットワークからSnowflakeにアクセスしたい場合、ご自身のオンプレミスDNSで*.privatelink.snowflakecomputing.comに対してDNS転送ルールを設定すればアクセスできます。

その3:自分のSnowflakeアカウントへのパブリックアクセスをブロックする

自身のSnowflakeアカウントを使用してプライベートサービス接続を設定した場合、Snowflakeのネットワークポリシーを設定して、許可リストに自身のプライベートネットワークIP範囲を追加することで、Snowflakeアカウントへのパブリックエンドポイントアクセスをブロックできます。ネットワークポリシーによって使用されるクライアントIPアドレスは、TCPプロキシプロトコルv2(PPv2)を使用したSnowflakeへのプライベートサービス接続によってプロパゲートされます。

その4:カスタマーネットワーク外で実行されているサードパーティツールにSnowflakeへの接続を許可する

Snowflakeとのプライベートサービス接続を設定し、パブリックアクセスをブロックしたら、ご自身のネットワーク外で実行されているサードパーティツールをSnowflakeに接続することはできません。このようなツールがSnowflakeに接続できるようにするには、該当のサードパーティツールから接続するユーザー単位で、Snowflake内にネットワークポリシーを作成します。あるいは、そのサードパーティツールがOAuthを使用している場合、OAuth統合レベルでネットワークポリシーを設定することもできます。

まとめ

Google CloudのPrivate Service Connect統合機能をいますぐ導入して、Snowflakeアカウントとのプライベート接続のメリットを体感してください。Google CloudのPrivate Service Connectの詳細については、Snowflakeのドキュメンテーションを参照してください。ご感想や改善点のご要望がありましたら、Snowflake Communityポータルよりお寄せください。