Snowflake アカウントへの PrivateLink 経由でのアクセス強制を試してみた

Snowflake アカウントへの PrivateLink 経由でのアクセス強制を試してみた

2026.04.03

はじめに

2026年2月のアップデートで、Snowflake アカウントへのパブリックアクセスを完全に無効化し、PrivateLink 経由の接続のみを強制する機能が一般提供となりました。

こちらの機能を試してみた内容を本記事でまとめます。

https://docs.snowflake.com/en/release-notes/2026/other/2026-02-24-enforce-privatelink-access-only

アップデートの概要

本機能については以下に記載があります。

https://docs.snowflake.com/en/user-guide/security-disable-public-access-privatelink

Snowflake では、ネットワークポリシーなどによるアクセス制御を設定していても、組織名とアカウント名がわかれば、パブリック URL でログインページ自体は表示できてしまいます。本機能を有効化することで、このログインページも含めてパブリック URL 経由のアクセスをすべて無効化できます。

この設定にはSYSTEM$ENFORCE_PRIVATELINK_ACCESS_ONLY関数使用します。
プライベート接続経由でアクセスしている状態でこの関数を実行すると、パブリック URL へのアクセス試行に対してHTTP 404 account not foundエラーが返されるようになります。

これにより、PrivateLink が構成済みのアカウントでは、プライベート接続経由のアクセスのみを強制でき、アカウントの存在自体を外部から隠蔽することが可能です。なお、設定を元に戻す場合はSYSTEM$DISABLE_PRIVATELINK_ACCESS_ONLY関数を使用します。

注意点として、本機能の利用には Business Critical Edition 以上が必要です。また、プライベート接続に対応していないサードパーティ SaaS との連携がある場合は、接続できなくなる点にご注意ください。

試してみる

前提条件

以下の環境を使用しています。

  • Snowflake
    • クラウドサービス:Microsoft Azure
    • リージョン:japaneast

PrivateLink の構成は以下の記事の手順で完了済みとしています。

https://dev.classmethod.jp/articles/azure-private-link-snowflake-service-internal-stage-try/

そのため検証開始時点で、PrivateLink 経由でアクセスできることを確認します。

2026-03-30_13h50_41

プライベート接続経由でSYSTEM$ENFORCE_PRIVATELINK_ACCESS_ONLYを実行し、パブリックアクセスを無効化します。

SELECT SYSTEM$ENFORCE_PRIVATELINK_ACCESS_ONLY();

2026-03-30_13h49_49

パブリックアクセスがブロックされることを確認

設定有効化後、パブリック URL 経由で元々アクセスしていた状態から画面を更新すると下図の表示となりました。

2026-03-30_13h49_58

パブリックなアカウント URL を指定しアクセスしようとすると下図の表示となりアカウント自体存在しないように見えました。

2026-03-30_13h50_06

設定の解除

設定を元に戻す場合は、プライベート接続経由でSYSTEM$DISABLE_PRIVATELINK_ACCESS_ONLYを使用します。

SELECT SYSTEM$DISABLE_PRIVATELINK_ACCESS_ONLY();

これで再度パブリックURL経由でも接続できるようになります。

2026-03-30_13h50_17

ネットワークポリシーによるアクセス制御の場合

パブリックアクセスをブロックした状態で、アカウントURL経由でアクセスすると下図の表示となり、そこにアカウントがあることがわかり、ログイン画面も表示されます。
また、ログイン試行後にブロックされていることが確認できます。

2026-03-30_13h50_27

さいごに

簡単ではありますが、PrivateLink 専用アクセスの強制を試してみました。PrivateLink 構成済みの環境でパブリックアクセスを完全に遮断したい場合に有効な機能です。
こちらの内容がどなたかの参考になれば幸いです。

この記事をシェアする

関連記事