外部ネットワークアクセスの制限

このトピックでは、ユーザー定義関数およびプロシージャから外部ネットワークロケーションにアクセスする際の制限について説明します。

制限事項

  • 現在、JavaまたはPythonのみで記述されたハンドラーが、Snowflakeの外部ネットワークのロケーションにアクセスできます。

  • パブリックインターネット上にない外部ネットワークロケーションは、外部アクセスに対応していません。例えば、仮想プライベートネットワーク(VPN)や仮想ネットワーク(VNet)の背後にあるロケーションは、UDF やプロシージャから到達することはできません。

  • ネットワークルールの VALUE_LIST 値では、ワイルドカードはサポートされていません。

  • ハンドラーコード内では、プロシージャのメインスレッドまたは UDF から シークレット API にアクセスする必要があります。ハンドラーコードが新しいスレッドをフォークし、そこからシークレット API を使用しようとすると、次のようなエラーが表示されます。

    Secrets can only be accessed from the main thread.
    

    たとえば、以下のPythonコードはエラーを生成します。

    with ThreadPoolExecutor(max_workers=1) as executor:
      futures = [executor.submit(function, get_generic_secret)]
    
    Copy
  • この機能は現在、政府リージョンを除くすべての AWS、Azureリージョンのアカウントでご利用いただけます。

    詳細については、 サポートされているクラウドリージョン をご参照ください。

  • 外部アクセスは 試用アカウント ではサポートされていません。