AWS 上的外部网络访问和专用连接¶
您可以通过 外部网络访问 将 Snowflake 配置为与 AWS 外部服务建立出站专用连接。
与公共连接不同,使用专用连接必须执行以下操作:
创建专用连接端点。此步骤需要 ACCOUNTADMIN 角色。
创建网络规则,以便将
TYPE属性设置为PRIVATE_HOST_PORT。
出站专用连接成本¶
您为每个专用连接端点以及处理的总数据量付费。有关这些项目的定价,请参阅 Snowflake 服务使用量表。
在 ACCOUNT_USAGE 和 ORGANIZATION_USAGE 架构中查询计费视图时,可以通过筛选以下服务类型来查看这些项目的成本:
OUTBOUND_PRIVATELINK_ENDPOINT
OUTBOUND_PRIVATELINK_DATA_PROCESSED
例如,您可以查询 USAGE_IN_CURRENCY_DAILY 视图并筛选这些服务类型。
设置到外部 Amazon S3 服务的专用连接:¶
调用 SYSTEM$PROVISION_PRIVATELINK_ENDPOINT 系统函数以指定 Snowflake 正连接到 AWS S3 服务,以及连接到服务时使用的主机名:
备注
*.s3.us-west-2.amazonaws.com中的星号指定您可以使用端点访问多个 S3 桶。执行以下 SQL 语句,以创建允许 Snowflake 向外部目标发送请求的网络规则,确保将
TYPE属性设置为PRIVATE_HOST_PORT:执行以下 SQL 语句,以创建针对外部 API 身份验证的安全集成:
执行以下 SQL 语句,以获取针对 IAM 用户的
STORAGE_AWS_IAM_USER_ARN和STORAGE_AWS_EXTERNAL_ID值:使用
STORAGE_AWS_IAM_USER_ARN和STORAGE_AWS_EXTERNAL_ID值,按照 Option 1: Configure a Snowflake storage integration to access Amazon S3 中 第 5 步 授予对 Amazon S3 服务的 IAM 用户访问权限。执行以下 SQL 语句以创建令牌,用于 AWS S3 服务的身份验证:
执行以下 SQL 语句以创建外部访问集成,使用前面步骤中创建的网络规则和令牌:
执行以下 SQL 语句之一,以创建可以使用外部访问集成和以前创建的令牌的函数:
执行以下 SQL 语句之一,以运行您创建的函数:
设置与外部 Amazon Bedrock 服务的专用连接¶
调用 SYSTEM$PROVISION_PRIVATELINK_ENDPOINT 系统函数,指定 Snowflake 正连接到 AWS S3 和 Amazon Bedrock 服务,以及连接到服务时使用的主机名:
执行以下 SQL 语句,以创建允许 Snowflake 向外部目标发送请求的网络规则,确保将
TYPE属性设置为PRIVATE_HOST_PORT:执行以下 SQL 语句,以创建针对外部 API 身份验证的安全集成:
执行以下 SQL 语句,以获取针对 IAM 用户的
STORAGE_AWS_IAM_USER_ARN和STORAGE_AWS_EXTERNAL_ID值:使用
STORAGE_AWS_IAM_USER_ARN和STORAGE_AWS_EXTERNAL_ID值,按照 Option 1: Configure a Snowflake storage integration to access Amazon S3 中 第 5 步 授予对 Amazon Bedrock 服务的 IAM 用户访问权限。执行以下 SQL 语句以创建令牌,用于 AWS Bedrock 服务的身份验证:
执行以下 SQL 语句以创建外部访问集成,使用前面步骤中创建的网络规则和令牌:
执行以下 SQL 语句,以创建可以使用外部访问集成和以前创建的令牌的函数:
执行以下 SQL 语句,以运行您创建的函数: