配置专用连接¶
入站连接¶
Snowpark Container Services 公开了三个端点:
镜像注册表服务: 它适用于 OCIv2 API,允许您将应用程序镜像上传到 Snowflake 账户中的存储库。有关更多信息,请参阅 Snowpark Container Services:使用镜像注册表和镜像仓库。
服务公开的公共端点: 您可以通过将一个或多个端点声明为公共端点,允许您账户中的用户从 Snowflake 外部(入口)访问服务。有关更多信息,请参阅 使用服务。
身份验证端点: 当用户尝试访问服务的公共端点时,Snowpark Container Services 会通过此端点重定向用户以进行身份验证。
本节介绍如何启用与这些端点的专用连接 (AWS PrivateLink)。
备注
仅 AWS PrivateLink 支持与 Snowpark Container Services 的专用连接。
使用 AWS PrivateLink 时,您可控制 DNS 分辨率;没有 Snowflake 控制的 PrivateLink DNS 记录。
配置先决条件¶
要启用与 Snowpark Container Services 的专用连接,请先配置专用连接 (AWS PrivateLink),以将您的 Snowflake 账户连接到一个或多个 AWS VPCs。这允许 AWS VPCs 向 Snowflake 发出请求。有关更多信息,请参见 Snowflake 服务的入站专用连接。
配置公共端点访问权限¶
要启用从 VPC 向服务公共端点发出的入口请求,请执行以下操作:
在 Snowflake 账户中调用 SYSTEM$GET_PRIVATELINK_CONFIG,获取账户的主机名列表。在输出中:
app-service-privatelink-url
密钥为 Snowpark Container Services 公共端点提供通配符主机名。spcs-auth-privatelink-url
密钥提供路由 Snowpark Container Services 身份验证所需的主机名。
要通过 AWS PrivateLink 端点访问 Snowflake,必须在 DNS 中创建 CNAME 记录,以便将 SYSTEM$GET_PRIVATELINK_CONFIG 函数的端点值解析为 VPC 端点的 DNS 名称。
备注
目前不支持账户级主机名路由。
在 Snowflake 中配置对 Snowpark Container Services 注册表的访问权限¶
在 Snowflake 账户中调用 SYSTEM$GET_PRIVATELINK_CONFIG 以获取账户的主机名列表。在输出中,
spcs-registry-privatelink-url
密钥提供路由 Snowpark Container 镜像注册表请求所需的主机名。要通过 AWS PrivateLink 端点访问 Snowflake,必须在 DNS 中创建 CNAME 记录,以便将 SYSTEM$GET_PRIVATELINK_CONFIG 函数的端点值解析为 VPC 端点的 DNS 名称。
安全注意事项¶
以下内容适用于服务公开的公共端点:
每个端点都可以提供 HTTPS 加密流量和 WebSocket 加密流量。
每个端点都有自己的顶级域,没有与 Snowsight 共享的元素。这可确保浏览器将服务与 Snowsight 隔离开来,并将服务相互隔离,从而降低跨源攻击的风险。
出站连接¶
您可能会选择通过专用连接端点来引导服务的出口流量,而不是通过公共互联网路由网络出口。有关更多信息,请参阅 使用专用连接的网络出口。