ALTER API INTEGRATION

修改现有 API 集成的属性。

另请参阅:

CREATE API INTEGRATIONDROP INTEGRATIONSHOW INTEGRATIONS

语法

ALTER [ API ] INTEGRATION [ IF EXISTS ] <name> SET
  [ API_AWS_ROLE_ARN = '<iam_role>' ]
  [ AZURE_AD_APPLICATION_ID = '<azure_application_id>' ]
  [ API_KEY = '<api_key>' ]
  [ ENABLED = { TRUE | FALSE } ]
  [ API_ALLOWED_PREFIXES = ('<...>') ]
  [ API_BLOCKED_PREFIXES = ('<...>') ]
  [ COMMENT = '<string_literal>' ]

ALTER [ API ] INTEGRATION <name> SET TAG <tag_name> = '<tag_value>' [ , <tag_name> = '<tag_value>' ... ]

ALTER [ API ] INTEGRATION <name> UNSET TAG <tag_name> [ , <tag_name> ... ]

ALTER [ API ] INTEGRATION [ IF EXISTS ] <name>  UNSET {
                                                      API_KEY              |
                                                      ENABLED              |
                                                      API_BLOCKED_PREFIXES |
                                                      COMMENT
                                                      }
                                                      [ , ... ]
Copy

参数

name

要更改的集成的标识符。如果标识符包含空格或特殊字符,则整个字符串必须放在双引号内。放在双引号内的标识符也区分大小写。

SET ...

指定要为 API 集成设置的一个或多个属性/参数(用空格、逗号或新行分隔):

ENABLED = TRUE | FALSE

指定是启动集成操作还是暂停集成操作。

  • TRUE 允许运行集成。

  • FALSE 会暂停集成以进行维护。Snowflake 与第三方服务之间的任何集成都无法正常工作。

API_AWS_ROLE_ARN = '<iam_role>'

iam_role 是云平台角色的 ARN (Amazon Resource Name)。

仅当 API_PROVIDER 设置为 aws_api_gateway 时,才适用此参数。

AZURE_AD_APPLICATION_ID = '<azure_application_id>'

远程服务的 Azure AD (Active Directory) 应用程序的“应用程序(客户端)ID”。

仅当 API_PROVIDER 设置为 azure_api_management 时,才适用此参数。

API_KEY = '<api_key>'

API 密钥 (也称为“订阅密钥”)。

API_ALLOWED_PREFIXES = ('<...>')

对使用集成引用一个或多个 HTTPS 代理服务端点(例如 Amazon AWS API Gateway)和这些代理中的资源的外部函数进行显式限制。支持逗号分隔的 URLs 列表,它们会被视为前缀(有关详细信息,请参阅下文)。

API_ALLOWED_PREFIXES = (...) 中的每个 URL 都被视为前缀。例如,如果指定:

https://xyz.amazonaws.com/production/

这意味着

https://xyz.amazonaws.com/production/

下的所有资源都是允许的。例如,允许使用以下 URL:

https://xyz.amazonaws.com/production/ml1

为了最大限度地提高安全性,应尽可能对允许的位置进行严格限制。

API_BLOCKED_PREFIXES = ('<...>')

列出了 HTTPS 代理服务中不允许从 Snowflake 调用的端点和资源。

位置的可能值遵循与上述 API_ALLOWED_PREFIXES 相同的规则。

API_BLOCKED_PREFIXES 优先于 API_ALLOWED_PREFIXES。如果某前缀与两者都匹配,则会被阻止。换句话说,Snowflake 允许所有与 API_ALLOWED_PREFIXES 匹配的值,但同时与 API_BLOCKED_PREFIXES 匹配的值 除外

如果某个值在 API_ALLOWED_PREFIXES 范围之外,则无需对其显式阻止。

TAG tag_name = 'tag_value' [ , tag_name = 'tag_value' , ... ]

指定 标签 名称和标签字符串值。

标签值始终为字符串,标签值的最大字符数为 256。

有关在语句中指定标签的信息,请参阅 对象和列的标签配额

COMMENT = 'string_literal'

字符串(字面量),用于指定集成注释。

UNSET ...

指定要为 API 集成取消设置的一个或多个属性/参数,这会将它们重置回默认值:

  • ENABLED

  • API_BLOCKED_PREFIXES

  • TAG tag_name [ , tag_name ... ]

  • COMMENT

使用说明

  • API_PROVIDER 无法更改。

  • 关于元数据:

    注意

    客户应确保在使用 Snowflake 服务时,不会将个人数据(用户对象除外)、敏感数据、出口管制数据或其他受监管数据作为元数据输入。有关更多信息,请参阅 Snowflake 中的元数据字段

示例

以下示例启动了已暂停的集成的操作:

ALTER API INTEGRATION myint SET ENABLED = TRUE;
Copy
语言: 中文