ALTER APPLICATION SET SPECIFICATION¶
为 Snowflake Native App 创建或更新一个 应用程序规范。
备注
此命令只能由一个 Snowflake Native App 使用。
- 另请参阅:
ALTER APPLICATION、ALTER APPLICATION ... { APPROVE | DECLINE} SPECIFICATION、ALTER APPLICATION DROP SPECIFICATION
语法¶
外部访问集成¶
安全集成 (CLIENT_CREDENTIALS)¶
安全集成 (JWT_BEARER)¶
列表¶
应用程序间通信¶
一般参数¶
app_spec_name应用程序规范 的标识符。
TYPE = {EXTERNAL_ACCESS | SECURITY_INTEGRATION | LISTING | CONNECTION}}指定应用程序规范的类型。支持的值包括:
重要
应用程序规范的类型一经创建便无法更改。尝试更改类型将导致错误。
LABEL = 'label'为应用程序规范指定标签。此标签是使用者可以看到的应用程序规范的名称。每个应用程序规范都必须有唯一的标签。
备注
仅更改标签不会触发新的审批请求。如需要求使用者进行审批,您还需更改应用程序规范定义(例如 HOST_PORTS、OAUTH_TOKEN_ENDPOINT 或 TARGET_ACCOUNTS)。
DESCRIPTION = 'description'指定应用程序规范的描述。Snowflake 建议提供有关应用程序规范类型以及应用程序为什么需要它的信息。
备注
仅更改描述不会触发新的审批请求。如需要求使用者进行审批,您还需更改应用程序规范定义(例如 HOST_PORTS、OAUTH_TOKEN_ENDPOINT 或 TARGET_ACCOUNTS)。
外部访问集成参数¶
HOST_PORTS | PRIVATE_HOST_PORTS = ( 'value' [ , 'value', ... ] )指定应用程序可以连接的主机端口或私有主机端口的列表。这些端口由外部访问集成使用。
安全集成参数 - CLIENT_CREDENTIALS¶
OAUTH_TYPE = 'CLIENT_CREDENTIALS'指定用于外部 API 身份验证的安全集成类型。有关更多信息,请参阅 CREATE SECURITY INTEGRATION(外部 API 身份验证)。
OAUTH_TOKEN_ENDPOINT = 'string_literal'指定客户端用于获取访问令牌的令牌端点,方法是提供其授权授予或刷新令牌。有关更多信息,请参阅 CREATE SECURITY INTEGRATION(外部 API 身份验证)。
OAUTH_ALLOWED_SCOPES = ( 'scope' [ , 'scope' ... ] )指定以逗号分隔的范围列表,每个范围放在单引号内,在 OAuth 客户端凭证流期间由集成中具备 USAGE 的角色通过 OAuth 发出请求时使用。有关更多信息,请参阅 CREATE SECURITY INTEGRATION(外部 API 身份验证)。
OAUTH_ACCESS_TOKEN_VALIDITY = integer指定由 OAuth 服务器颁发的 OAuth 访问令牌的默认生命周期(以秒为单位)。有关更多信息,请参阅 CREATE SECURITY INTEGRATION(外部 API 身份验证)。
安全集成参数 - JWT_BEARER¶
OAUTH_TYPE = 'JWT_BEARER'指定用于外部 API 身份验证的安全集成类型。有关更多信息,请参阅 CREATE SECURITY INTEGRATION(外部 API 身份验证)。
OAUTH_TOKEN_ENDPOINT = 'string_literal'指定客户端用于获取访问令牌的令牌端点,方法是提供其授权授予或刷新令牌。有关更多信息,请参阅 CREATE SECURITY INTEGRATION(外部 API 身份验证)。
OAUTH_AUTHORIZATION_ENDPOINT = 'string_literal'指定用于对外部服务进行身份验证的 URL。有关更多信息,请参阅 CREATE SECURITY INTEGRATION(外部 API 身份验证)。
OAUTH_REFRESH_TOKEN_VALIDITY = integer指定由 OAuth 服务器颁发的 OAuth 刷新令牌的默认生命周期(以秒为单位)。有关更多信息,请参阅 CREATE SECURITY INTEGRATION(外部 API 身份验证)。
列表参数¶
TARGET_ACCOUNTS = 'account_list'指定目标账户的单引号字符串,用逗号分隔,不带空格。必须按格式
OrgName.AccountName指定每个账户;例如:'ProviderOrg.ProviderAccount,PartnerOrg.PartnerAccount'。规范获得批准后,这些账户将添加到列表中。如果被拒绝,所有账户都将从列表中移除。LISTING = listing_name指定应用程序创建的外部列表的标识符。该列表必须已经存在,并且必须由附加了共享的应用程序创建。在应用程序规范中设置列表后,列表名称将无法更改。
AUTO_FULFILLMENT_REFRESH_SCHEDULE = 'schedule'可选。指定跨区域数据共享的刷新计划。跨区域共享数据时需要此参数。该值可以用两种格式指定:
num MINUTE:选择使用 时默认使用的角色和仓库。分钟数,最短为 10 分钟,最长为 11,520 分钟(8 天)。USING CRON expression time_zone:选择使用 时默认使用的角色和仓库。用于刷新的带时区的 Cron 表达式。
应用程序间通信参数¶
SERVER_APPLICATION = server_app要连接的服务器应用程序的名称。不支持以下操作:
为现有规范更新此设置。
针对同一服务器应用程序的多个规范。
SERVER_APPLICATION_ROLES = ( app_role1 [ , app_role2 ... ] )指定将授予此应用程序的服务器应用程序的应用程序角色列表,以逗号分隔。
使用说明¶
要使用此命令,提供商必须确保应用程序的清单文件使用的是
manifest_version: 2。
示例¶
创建外部访问的应用程序规范:
为 OAuth 安全集成创建应用程序规范:
通过列表实现的数据共享应用规范: