从Snowflake仓库访问互联网或公共网络:对于UDF

问题描述 投票:0回答:2

我在 Snowflake SQL 中创建了一个 Python UDF(遵循此链接),它调用我公司编写的应用程序的 python 代码。 python 代码需要公共互联网访问才能与我公司托管的服务器进行通信,以执行一些数据提取/加载作业。

当前,当我调用 UDF 时,它失败并出现以下错误:

<urllib3.connection.HTTPSConnection object at 0xffff6c94c9d0>: Failed to establish a new connection: [Errno -3] Temporary failure in name resolution')) in function ETL_EXTENSION with handler etl_core

有人可以告诉我如何从 Snowflake 仓库启用互联网或公共网络访问吗? 在this链接中指出禁止从UDF“网络访问”。

这里是这种情况还是有什么方法可以实现这一点?预先感谢您的帮助。

python snowflake-cloud-data-platform user-defined-functions
2个回答
0
投票

目前Snowflake Python UDF运行在沙箱环境中,有一定的限制,其中包括公网访问。


0
投票

外网访问概述:

您可以创建对 Snowflake 外部特定网络位置的安全访问,然后从处理程序代码中使用该访问权限用于用户定义函数 (UDF) 和存储过程。您可以通过外部访问集成启用此访问。

通过外部访问集成,您可以:

  • 编写访问外部位置的 UDF 和过程处理程序。
  • 允许或阻止访问 Snowflake 外部网络上的位置。
  • 在处理程序代码中使用代表存储凭据的机密,而不是使用文字值来通过外部网络位置进行身份验证。
  • 指定允许在外部网络位置使用哪些机密。
© www.soinside.com 2019 - 2024. All rights reserved.