使用应用程序规范批准与外部资源的连接

本主题介绍使用者如何使用应用程序规范来批准与 Snowflake Native App 的外部资源的连接。

关于应用程序规范

应用程序规范允许提供商指定应用程序所需的外部(Snowflake 以外)端点和资源。使用者可以查看应用程序请求的端点,并酌情批准或拒绝这些端点。

在使用者批准应用程序规范后,该应用程序有权连接到这些端点。应用程序规范仅允许使用者批准与外部资源的连接。

该应用程序还可以请求创建对象的权限,包括外部访问集成。有关更多信息,请参阅 允许应用程序在使用者账户中创建资源

应用程序规范的状态

应用程序规范的状态表明使用者是批准还是拒绝了该规范。可能的状态如下:

  • PENDING 使用者尚未批准或拒绝该应用程序规范。这是默认状态。

  • APPROVED 使用者已批准该应用程序规范。

  • DECLINED 使用者已拒绝该应用程序规范。

有关确定应用程序规范状态的信息,请参阅 查看应用程序所需的外部端点

应用程序规范的序列号

序列号用于唯一标识应用程序规范的版本。当提供商更改应用程序规范的定义时,序列号会自动递增。应用程序规范的定义包括配置和其他所需信息。不属于定义的字段(例如 description)不会触发序列号的更新。

通过序列号,提供商和使用者能够了解应用程序规范的当前状态以及已启用哪些外部端点。

查看应用程序的应用程序规范

要查看应用程序请求的外部端点,使用者可以使用 SHOW SPECIFICATIONS 命令,如以下示例所示:

SHOW SPECIFICATIONS IN APPLICATION hello_snowflake_app;
Copy

此命令列出了有关名为 hello_snowflake_app 的应用程序的应用程序规范的信息。

status 列显示了应用程序规范是否已获得批准、拒绝或仍待定。有关更多信息,请参阅 应用程序规范的状态

查看应用程序所需的外部端点

要查看应用程序所需的外部端点,使用者可以使用 DESCRIBE SPECIFICATIONSHOW SPECIFICATIONS 命令查看应用程序规范的详细信息,如以下示例所示:

DESC SPECIFICATION my_app_specification IN APPLICATION hello_snowflake_app;
SHOW SPECIFICATIONS IN APPLICATION hello_snowflake_app;
Copy

对于每个序列号,此命令会显示应用程序规范的属性及其值。

definition 字段包含应用程序请求的外部主机端口的列表。请参阅 应用程序规范的序列号

使用 Snowsight 批准应用程序规范

使用 Snowsight,使用者可以批准或拒绝应用程序规范。

  1. 登录 Snowsight。

  2. 在导航菜单中,选择 Data Products » Apps

  3. 选择应用程序。

  4. 选择工具栏中的 Settings 图标。

  5. 选择 Connections

  6. 在要批准的连接旁边,展开 Details

    Snowsight 显示了应用程序的外部访问集成、网络规则和请求的端点。

  7. 批准或拒绝所请求的端点:

    • 要批准端点,请选择 ...,然后选择 Approve

    • 要拒绝端点,请选择 ...,然后选择 Deny

使用 SQL 批准或拒绝应用程序规范

使用者可以批准或拒绝应用程序规范,以允许该应用程序连接到外部端点。

批准或拒绝应用程序规范所需的权限

要批准或拒绝应用程序规范,用户必须使用具有 MANAGE APPLICATION SPECIFICATIONS 权限的角色。默认向 SECURITYADMIN 角色授予此权限。拥有 SECURITYADMIN 角色的用户可以根据需要向其他角色授予此权限。

备注

由于批准应用程序规范会允许应用程序访问 Snowflake 之外的端点,因此使用者必须使用具有 MANAGE APPLICATION SPECIFICATIONS 权限的角色,该权限由使用者账户角色的安全管理员委派。作为应用程序的所有者不会授予所需的权限。

使用 SQL 批准应用程序规范

要批准应用程序规范,使用者可以运行 ALTER APPLICATION 命令,如以下示例所示:

ALTER APPLICATION hello-snowflake-app APPROVE SPECIFICATION
  my-app-spec SEQUENCE_NUMBER = 2;
Copy

此命令批准名为 hello-snowflake-app 的应用程序所对应的名为 my-app-spec 的应用程序规范。

使用者可以通过运行 DESCRIBE SPECIFICATIONSHOW SPECIFICATIONS 命令来获取 SEQUENCE_NUMBER 的值。

使用 SQL 拒绝应用程序规范

要拒绝应用程序规范,使用者可以运行 ALTER APPLICATION 命令,如以下示例所示:

ALTER APPLICATION hello-snowflake-app DECLINE SPECIFICATION
  my-app-spec SEQUENCE_NUMBER = 2;
Copy
语言: 中文